Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
eb2795b8aa | ||
|
fa71842df5 | ||
|
f2c44b0288 |
|
@ -45,6 +45,7 @@ import android.os.Environment;
|
|||
import android.os.Handler;
|
||||
import android.os.Message;
|
||||
import android.os.StatFs;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.util.Log;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.MotionEvent;
|
||||
|
@ -66,13 +67,15 @@ public class GenesisGLSurfaceView extends GLSurfaceView {
|
|||
private String apklocation;
|
||||
private float resourceSize;
|
||||
private int storageType;
|
||||
private float density;
|
||||
private float xdpi;
|
||||
private float ydpi;
|
||||
private boolean usePrecompilerShader;
|
||||
|
||||
private GenesisRenderer mGenesisRenderer;
|
||||
private GenesisEditText mGenesisEditText;
|
||||
|
||||
private ContextFactory mContextFactory;
|
||||
static DisplayMetrics dm = new DisplayMetrics();
|
||||
|
||||
private AssetManager mMgr;
|
||||
//get set methods=====================================================================================
|
||||
|
@ -141,15 +144,15 @@ public class GenesisGLSurfaceView extends GLSurfaceView {
|
|||
{
|
||||
StatFs sf = new StatFs(data.getPath());
|
||||
int availableBlocks = sf.getAvailableBlocks();
|
||||
|
||||
Log.d(TAG, "" + data.getAbsolutePath());
|
||||
Log.d(TAG, "" + availableBlocks);
|
||||
int size = sf.getBlockSize();
|
||||
|
||||
Log.d(TAG, "" + size + "");
|
||||
int availableSize = availableBlocks * size;
|
||||
|
||||
Log.d(TAG, "" + availableSize + "");
|
||||
return availableSize/(1024*1024);
|
||||
}
|
||||
|
||||
|
||||
private void copyAllResFiles(final Context context,String Data,String Dest)
|
||||
{
|
||||
Log.d( "copy", "copy start");
|
||||
|
@ -364,6 +367,9 @@ public class GenesisGLSurfaceView extends GLSurfaceView {
|
|||
public GenesisGLSurfaceView(Context context) {
|
||||
super(context);
|
||||
|
||||
((GenesisActivity) context).getWindowManager().getDefaultDisplay().getMetrics(dm);
|
||||
xdpi = dm.xdpi;
|
||||
ydpi = dm.ydpi;
|
||||
mMgr = context.getAssets();
|
||||
this.setEGLContextClientVersion(2);
|
||||
|
||||
|
@ -401,7 +407,7 @@ public class GenesisGLSurfaceView extends GLSurfaceView {
|
|||
gamedir = apklocation+"/assets/Data";
|
||||
|
||||
String path = "data/data/"+packagename;
|
||||
String spath = path+"Data/Script";
|
||||
String spath = path+"/Script";
|
||||
File cdesDir = new File(spath);
|
||||
File desDir = new File(path);
|
||||
if(!cdesDir.exists())
|
||||
|
@ -590,10 +596,7 @@ public class GenesisGLSurfaceView extends GLSurfaceView {
|
|||
protected void onSizeChanged(final int pNewSurfaceWidth, final int pNewSurfaceHeight, final int pOldSurfaceWidth, final int pOldSurfaceHeight) {
|
||||
if(!this.isInEditMode()) {
|
||||
|
||||
float screenWidth = (int)(pNewSurfaceWidth * density + 0.5f);
|
||||
float screenHeight = (int)(pNewSurfaceHeight * density + 0.5f);
|
||||
|
||||
this.mGenesisRenderer.setScreenWidthAndHeight(pNewSurfaceWidth, pNewSurfaceHeight,screenWidth,screenHeight,mMgr);
|
||||
this.mGenesisRenderer.setScreenWidthAndHeight(pNewSurfaceWidth, pNewSurfaceHeight,xdpi,ydpi,mMgr);
|
||||
|
||||
this.mGenesisRenderer.setConfig(gamedir,scenename,usePrecompilerShader);
|
||||
this.mGenesisRenderer.setStorage(storageType, packagename,apklocation );
|
||||
|
@ -602,20 +605,25 @@ public class GenesisGLSurfaceView extends GLSurfaceView {
|
|||
|
||||
@Override
|
||||
public boolean onKeyDown(final int pKeyCode, final KeyEvent pKeyEvent) {
|
||||
switch (pKeyCode) {
|
||||
case KeyEvent.KEYCODE_BACK:
|
||||
this.queueEvent(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
GenesisGLSurfaceView.this.mGenesisRenderer.handleKeyDown(pKeyCode);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
default:
|
||||
return super.onKeyDown(pKeyCode, pKeyEvent);
|
||||
}
|
||||
this.queueEvent(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
GenesisGLSurfaceView.this.mGenesisRenderer.handleKeyDown(pKeyCode);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onKeyUp(final int pKeyCode, final KeyEvent pKeyEvent) {
|
||||
this.queueEvent(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
GenesisGLSurfaceView.this.mGenesisRenderer.handleKeyUp(pKeyCode);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
}
|
||||
private static class ContextFactory implements GLSurfaceView.EGLContextFactory {
|
||||
private static int EGL_CONTEXT_CLIENT_VERSION = 0x3098;
|
||||
public EGLContext createContext(EGL10 egl, EGLDisplay display, EGLConfig eglConfig) {
|
||||
|
|
|
@ -156,6 +156,7 @@ public class GenesisRenderer implements GLSurfaceView.Renderer {
|
|||
private static native void nativeTouchesMove(final int[] pIDs, final float[] pXs, final float[] pYs);
|
||||
private static native void nativeTouchesCancel(final int[] pIDs, final float[] pXs, final float[] pYs);
|
||||
private static native boolean nativeKeyDown(final int pKeyCode);
|
||||
private static native boolean nativeKeyUp(final int pKeyCode);
|
||||
private static native void nativeRender();
|
||||
private static native void nativeInit(final int pWidth, final int pHeight,final float dpiW,final float dpiH , AssetManager assetManager);
|
||||
private static native void nativeConfig(final String gamedir, final String scenename,final boolean bShader);
|
||||
|
@ -185,6 +186,10 @@ public class GenesisRenderer implements GLSurfaceView.Renderer {
|
|||
GenesisRenderer.nativeKeyDown(pKeyCode);
|
||||
}
|
||||
|
||||
public void handleKeyUp(final int pKeyCode) {
|
||||
GenesisRenderer.nativeKeyUp(pKeyCode);
|
||||
}
|
||||
|
||||
public void handleOnPause() {
|
||||
GenesisRenderer.nativeOnPause();
|
||||
}
|
||||
|
|
|
@ -22,11 +22,18 @@
|
|||
# THE SOFTWARE.
|
||||
#****************************************************************************
|
||||
|
||||
SET(LINK_ANDRIOD_PHYSX FALSE) # force close
|
||||
|
||||
|
||||
ADD_DEFINITIONS(
|
||||
-D__ANDROID__
|
||||
-D__USE_AUDIO__
|
||||
-DANDROID )
|
||||
|
||||
IF(${LINK_ANDRIOD_PHYSX})
|
||||
ADD_DEFINITIONS( -D__USE_PHYSX__ )
|
||||
ENDIF()
|
||||
|
||||
#temp definitions
|
||||
ADD_DEFINITIONS(
|
||||
-D__APP_BUILD_COMMIT__
|
||||
|
@ -65,6 +72,7 @@ SET( ANDROID_PLATFORMS_ANDROID14_INCLUDE "${ANDROID_NDK_ROOT}/platforms/android-
|
|||
SET( ANDROID_PLATFORMS_ANDROID14_LIB "${ANDROID_NDK_ROOT}/platforms/android-14/arch-arm/usr/lib" )
|
||||
SET( GENESIS_EXTERNAL_PROJECT_DIR "${CMAKE_SOURCE_DIR}/../../genesis_externals/Externals")
|
||||
|
||||
|
||||
MESSAGE( STATUS "ANDROID_NDK_ROOT:" ${ANDROID_NDK_ROOT} )
|
||||
|
||||
INCLUDE_DIRECTORIES( ${ANDROID_GUN_LIB_STD_INCLUDE_PATH} )
|
||||
|
|
|
@ -259,6 +259,7 @@ SET( CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/../bin/win32/" )
|
|||
|
||||
#<-------------------------------------------------Editor------------------------------------------------>
|
||||
SET( GENESIS_EDITOR_DIR ${PROJECT_SOURCE_DIR}/../../genesis_editor)
|
||||
SET( GENESIS_INTERNAL_DIR ${PROJECT_SOURCE_DIR}/../../genesis_internal)
|
||||
SET( GENESIS_EDITOR_CMAKE_FILE ${GENESIS_EDITOR_DIR}/CMake/EditorBuildConfig.cmake)
|
||||
|
||||
IF( EXISTS ${GENESIS_EDITOR_CMAKE_FILE} )
|
||||
|
|
|
@ -28,14 +28,5 @@ void RegisterMonoModules()
|
|||
{
|
||||
mono_aot_only = true;
|
||||
//mono_ficall_flag = true;
|
||||
mono_aot_register_module(mono_aot_module_mscorlib_info);
|
||||
mono_aot_register_module(mono_aot_module_UserDefCSharp_info);
|
||||
mono_aot_register_module(mono_aot_module_Mono_Security_info);
|
||||
mono_aot_register_module(mono_aot_module_System_info);
|
||||
mono_aot_register_module(mono_aot_module_ScriptFrameworkLibrary_info);
|
||||
mono_aot_register_module(mono_aot_module_ScriptGUILibrary_info);
|
||||
mono_aot_register_module(mono_aot_module_ScriptRuntimeLibrary_info);
|
||||
mono_aot_register_module(mono_aot_module_System_Configuration_info);
|
||||
mono_aot_register_module(mono_aot_module_System_Security_info);
|
||||
mono_aot_register_module(mono_aot_module_System_Xml_info);
|
||||
|
||||
}
|
||||
|
|
|
@ -31,45 +31,6 @@
|
|||
F5C42B2418B1AE5F00F5144E /* libmpg123-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F5C42B0418B1ADC100F5144E /* libmpg123-ios.a */; };
|
||||
F5C42B2518B1AE5F00F5144E /* libOggIos.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F5C42AFE18B1AD6C00F5144E /* libOggIos.a */; };
|
||||
F5C42B2618B1AE5F00F5144E /* libzlibIos.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F5C42AF818B1AD5A00F5144E /* libzlibIos.a */; };
|
||||
F5EFE69418BC442000D585CC /* Asset in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68118BC441F00D585CC /* Asset */; };
|
||||
F5EFE69518BC442000D585CC /* CompressRes in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68218BC441F00D585CC /* CompressRes */; };
|
||||
F5EFE69618BC442000D585CC /* CompressUI in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68318BC441F00D585CC /* CompressUI */; };
|
||||
F5EFE69718BC442000D585CC /* Google_UIMedia in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68418BC441F00D585CC /* Google_UIMedia */; };
|
||||
F5EFE69818BC442000D585CC /* JYPK in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68518BC441F00D585CC /* JYPK */; };
|
||||
F5EFE69918BC442000D585CC /* Lightmap in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68618BC441F00D585CC /* Lightmap */; };
|
||||
F5EFE69A18BC442000D585CC /* logfiles in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68718BC441F00D585CC /* logfiles */; };
|
||||
F5EFE69B18BC442000D585CC /* Mesh in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68818BC441F00D585CC /* Mesh */; };
|
||||
F5EFE69C18BC442000D585CC /* Physics in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68918BC442000D585CC /* Physics */; };
|
||||
F5EFE69D18BC442000D585CC /* preview in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68A18BC442000D585CC /* preview */; };
|
||||
F5EFE69E18BC442000D585CC /* QMShader in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68B18BC442000D585CC /* QMShader */; };
|
||||
F5EFE69F18BC442000D585CC /* Scene in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68C18BC442000D585CC /* Scene */; };
|
||||
F5EFE6A018BC442000D585CC /* Script in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68D18BC442000D585CC /* Script */; };
|
||||
F5EFE6A118BC442000D585CC /* Shader in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68E18BC442000D585CC /* Shader */; };
|
||||
F5EFE6A218BC442000D585CC /* Sharp.Genesis in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE68F18BC442000D585CC /* Sharp.Genesis */; };
|
||||
F5EFE6A318BC442000D585CC /* System in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE69018BC442000D585CC /* System */; };
|
||||
F5EFE6A418BC442000D585CC /* toolchain in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE69118BC442000D585CC /* toolchain */; };
|
||||
F5EFE6A518BC442000D585CC /* UIMedia in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE69218BC442000D585CC /* UIMedia */; };
|
||||
F5EFE6A618BC442000D585CC /* UserDefCSharp in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE69318BC442000D585CC /* UserDefCSharp */; };
|
||||
F5EFE6BC18BC443400D585CC /* Mono.Security.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B218BC443400D585CC /* Mono.Security.dll */; };
|
||||
F5EFE6BD18BC443400D585CC /* mscorlib.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B318BC443400D585CC /* mscorlib.dll */; };
|
||||
F5EFE6BE18BC443400D585CC /* ScriptFrameworkLibrary.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B418BC443400D585CC /* ScriptFrameworkLibrary.dll */; };
|
||||
F5EFE6BF18BC443400D585CC /* ScriptGUILibrary.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B518BC443400D585CC /* ScriptGUILibrary.dll */; };
|
||||
F5EFE6C018BC443400D585CC /* ScriptRuntimeLibrary.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B618BC443400D585CC /* ScriptRuntimeLibrary.dll */; };
|
||||
F5EFE6C118BC443400D585CC /* System.Configuration.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B718BC443400D585CC /* System.Configuration.dll */; };
|
||||
F5EFE6C218BC443400D585CC /* System.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B818BC443400D585CC /* System.dll */; };
|
||||
F5EFE6C318BC443400D585CC /* System.Security.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6B918BC443400D585CC /* System.Security.dll */; };
|
||||
F5EFE6C418BC443400D585CC /* System.Xml.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6BA18BC443400D585CC /* System.Xml.dll */; };
|
||||
F5EFE6C518BC443400D585CC /* UserDefCSharp.dll in Resources */ = {isa = PBXBuildFile; fileRef = F5EFE6BB18BC443400D585CC /* UserDefCSharp.dll */; };
|
||||
F5EFE6C618BC444F00D585CC /* Mono.Security.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B218BC443400D585CC /* Mono.Security.dll */; };
|
||||
F5EFE6C718BC444F00D585CC /* mscorlib.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B318BC443400D585CC /* mscorlib.dll */; };
|
||||
F5EFE6C818BC444F00D585CC /* ScriptFrameworkLibrary.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B418BC443400D585CC /* ScriptFrameworkLibrary.dll */; };
|
||||
F5EFE6C918BC444F00D585CC /* ScriptGUILibrary.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B518BC443400D585CC /* ScriptGUILibrary.dll */; };
|
||||
F5EFE6CA18BC444F00D585CC /* ScriptRuntimeLibrary.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B618BC443400D585CC /* ScriptRuntimeLibrary.dll */; };
|
||||
F5EFE6CB18BC444F00D585CC /* System.Configuration.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B718BC443400D585CC /* System.Configuration.dll */; };
|
||||
F5EFE6CC18BC444F00D585CC /* System.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B818BC443400D585CC /* System.dll */; };
|
||||
F5EFE6CD18BC444F00D585CC /* System.Security.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6B918BC443400D585CC /* System.Security.dll */; };
|
||||
F5EFE6CE18BC444F00D585CC /* System.Xml.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6BA18BC443400D585CC /* System.Xml.dll */; };
|
||||
F5EFE6CF18BC444F00D585CC /* UserDefCSharp.dll in Sources */ = {isa = PBXBuildFile; fileRef = F5EFE6BB18BC443400D585CC /* UserDefCSharp.dll */; };
|
||||
F5F49C2D17E1C17A00361F45 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F5F49C2C17E1C17900361F45 /* UIKit.framework */; };
|
||||
F5F49C2F17E1C17A00361F45 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F5F49C2E17E1C17A00361F45 /* Foundation.framework */; };
|
||||
F5F49C3117E1C17A00361F45 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F5F49C3017E1C17A00361F45 /* CoreGraphics.framework */; };
|
||||
|
@ -212,35 +173,6 @@
|
|||
F5C42B0B18B1ADFE00F5144E /* libopcode.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = libopcode.xcodeproj; path = ../../../genesis_externals/Externals/IosLibs/libopcode/libopcode.xcodeproj; sourceTree = "<group>"; };
|
||||
F5C42B1118B1AE1000F5144E /* GLSLOptimizer.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = GLSLOptimizer.xcodeproj; path = ../../../genesis_externals/Externals/IosLibs/mesa/GLSLOptimizer/GLSLOptimizer.xcodeproj; sourceTree = "<group>"; };
|
||||
F5C42B1718B1AE2A00F5144E /* hlsl2glslfork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = hlsl2glslfork.xcodeproj; path = ../../../genesis_externals/Externals/IosLibs/hlsl2glslfork/hlsl2glslfork/hlsl2glslfork.xcodeproj; sourceTree = "<group>"; };
|
||||
F5EFE68118BC441F00D585CC /* Asset */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Asset; path = ../../../../TL_Run/Asset; sourceTree = "<group>"; };
|
||||
F5EFE68218BC441F00D585CC /* CompressRes */ = {isa = PBXFileReference; lastKnownFileType = folder; name = CompressRes; path = ../../../../TL_Run/CompressRes; sourceTree = "<group>"; };
|
||||
F5EFE68318BC441F00D585CC /* CompressUI */ = {isa = PBXFileReference; lastKnownFileType = folder; name = CompressUI; path = ../../../../TL_Run/CompressUI; sourceTree = "<group>"; };
|
||||
F5EFE68418BC441F00D585CC /* Google_UIMedia */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Google_UIMedia; path = ../../../../TL_Run/Google_UIMedia; sourceTree = "<group>"; };
|
||||
F5EFE68518BC441F00D585CC /* JYPK */ = {isa = PBXFileReference; lastKnownFileType = folder; name = JYPK; path = ../../../../TL_Run/JYPK; sourceTree = "<group>"; };
|
||||
F5EFE68618BC441F00D585CC /* Lightmap */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Lightmap; path = ../../../../TL_Run/Lightmap; sourceTree = "<group>"; };
|
||||
F5EFE68718BC441F00D585CC /* logfiles */ = {isa = PBXFileReference; lastKnownFileType = folder; name = logfiles; path = ../../../../TL_Run/logfiles; sourceTree = "<group>"; };
|
||||
F5EFE68818BC441F00D585CC /* Mesh */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Mesh; path = ../../../../TL_Run/Mesh; sourceTree = "<group>"; };
|
||||
F5EFE68918BC442000D585CC /* Physics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Physics; path = ../../../../TL_Run/Physics; sourceTree = "<group>"; };
|
||||
F5EFE68A18BC442000D585CC /* preview */ = {isa = PBXFileReference; lastKnownFileType = folder; name = preview; path = ../../../../TL_Run/preview; sourceTree = "<group>"; };
|
||||
F5EFE68B18BC442000D585CC /* QMShader */ = {isa = PBXFileReference; lastKnownFileType = folder; name = QMShader; path = ../../../../TL_Run/QMShader; sourceTree = "<group>"; };
|
||||
F5EFE68C18BC442000D585CC /* Scene */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Scene; path = ../../../../TL_Run/Scene; sourceTree = "<group>"; };
|
||||
F5EFE68D18BC442000D585CC /* Script */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Script; path = ../../../../TL_Run/Script; sourceTree = "<group>"; };
|
||||
F5EFE68E18BC442000D585CC /* Shader */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Shader; path = ../../../../TL_Run/Shader; sourceTree = "<group>"; };
|
||||
F5EFE68F18BC442000D585CC /* Sharp.Genesis */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = Sharp.Genesis; path = ../../../../TL_Run/Sharp.Genesis; sourceTree = "<group>"; };
|
||||
F5EFE69018BC442000D585CC /* System */ = {isa = PBXFileReference; lastKnownFileType = folder; name = System; path = ../../../../TL_Run/System; sourceTree = "<group>"; };
|
||||
F5EFE69118BC442000D585CC /* toolchain */ = {isa = PBXFileReference; lastKnownFileType = folder; name = toolchain; path = ../../../../TL_Run/toolchain; sourceTree = "<group>"; };
|
||||
F5EFE69218BC442000D585CC /* UIMedia */ = {isa = PBXFileReference; lastKnownFileType = folder; name = UIMedia; path = ../../../../TL_Run/UIMedia; sourceTree = "<group>"; };
|
||||
F5EFE69318BC442000D585CC /* UserDefCSharp */ = {isa = PBXFileReference; lastKnownFileType = folder; name = UserDefCSharp; path = ../../../../TL_Run/UserDefCSharp; sourceTree = "<group>"; };
|
||||
F5EFE6B218BC443400D585CC /* Mono.Security.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = Mono.Security.dll; path = ../../../../TL_Run/Script/Mono.Security.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B318BC443400D585CC /* mscorlib.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = mscorlib.dll; path = ../../../../TL_Run/Script/mscorlib.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B418BC443400D585CC /* ScriptFrameworkLibrary.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = ScriptFrameworkLibrary.dll; path = ../../../../TL_Run/Script/ScriptFrameworkLibrary.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B518BC443400D585CC /* ScriptGUILibrary.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = ScriptGUILibrary.dll; path = ../../../../TL_Run/Script/ScriptGUILibrary.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B618BC443400D585CC /* ScriptRuntimeLibrary.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = ScriptRuntimeLibrary.dll; path = ../../../../TL_Run/Script/ScriptRuntimeLibrary.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B718BC443400D585CC /* System.Configuration.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = System.Configuration.dll; path = ../../../../TL_Run/Script/System.Configuration.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B818BC443400D585CC /* System.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = System.dll; path = ../../../../TL_Run/Script/System.dll; sourceTree = "<group>"; };
|
||||
F5EFE6B918BC443400D585CC /* System.Security.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = System.Security.dll; path = ../../../../TL_Run/Script/System.Security.dll; sourceTree = "<group>"; };
|
||||
F5EFE6BA18BC443400D585CC /* System.Xml.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = System.Xml.dll; path = ../../../../TL_Run/Script/System.Xml.dll; sourceTree = "<group>"; };
|
||||
F5EFE6BB18BC443400D585CC /* UserDefCSharp.dll */ = {isa = PBXFileReference; lastKnownFileType = file; name = UserDefCSharp.dll; path = ../../../../TL_Run/Script/UserDefCSharp.dll; sourceTree = "<group>"; };
|
||||
F5F49C2917E1C17900361F45 /* GameApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = GameApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F5F49C2C17E1C17900361F45 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
||||
F5F49C2E17E1C17A00361F45 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||
|
@ -412,25 +344,6 @@
|
|||
F5F49C2017E1C17800361F45 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F5EFE68118BC441F00D585CC /* Asset */,
|
||||
F5EFE68218BC441F00D585CC /* CompressRes */,
|
||||
F5EFE68318BC441F00D585CC /* CompressUI */,
|
||||
F5EFE68418BC441F00D585CC /* Google_UIMedia */,
|
||||
F5EFE68518BC441F00D585CC /* JYPK */,
|
||||
F5EFE68618BC441F00D585CC /* Lightmap */,
|
||||
F5EFE68718BC441F00D585CC /* logfiles */,
|
||||
F5EFE68818BC441F00D585CC /* Mesh */,
|
||||
F5EFE68918BC442000D585CC /* Physics */,
|
||||
F5EFE68A18BC442000D585CC /* preview */,
|
||||
F5EFE68B18BC442000D585CC /* QMShader */,
|
||||
F5EFE68C18BC442000D585CC /* Scene */,
|
||||
F5EFE68D18BC442000D585CC /* Script */,
|
||||
F5EFE68E18BC442000D585CC /* Shader */,
|
||||
F5EFE68F18BC442000D585CC /* Sharp.Genesis */,
|
||||
F5EFE69018BC442000D585CC /* System */,
|
||||
F5EFE69118BC442000D585CC /* toolchain */,
|
||||
F5EFE69218BC442000D585CC /* UIMedia */,
|
||||
F5EFE69318BC442000D585CC /* UserDefCSharp */,
|
||||
F5F49C7A17E1C25F00361F45 /* CSharpAssembly */,
|
||||
F5BC88A417F2959300F0D1DD /* IOSFramework */,
|
||||
F5F49C2B17E1C17900361F45 /* Frameworks */,
|
||||
|
@ -482,16 +395,6 @@
|
|||
F5F49C7A17E1C25F00361F45 /* CSharpAssembly */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F5EFE6B218BC443400D585CC /* Mono.Security.dll */,
|
||||
F5EFE6B318BC443400D585CC /* mscorlib.dll */,
|
||||
F5EFE6B418BC443400D585CC /* ScriptFrameworkLibrary.dll */,
|
||||
F5EFE6B518BC443400D585CC /* ScriptGUILibrary.dll */,
|
||||
F5EFE6B618BC443400D585CC /* ScriptRuntimeLibrary.dll */,
|
||||
F5EFE6B718BC443400D585CC /* System.Configuration.dll */,
|
||||
F5EFE6B818BC443400D585CC /* System.dll */,
|
||||
F5EFE6B918BC443400D585CC /* System.Security.dll */,
|
||||
F5EFE6BA18BC443400D585CC /* System.Xml.dll */,
|
||||
F5EFE6BB18BC443400D585CC /* UserDefCSharp.dll */,
|
||||
F560C2FE1811212200487A7D /* RegisterMonoModules.cpp */,
|
||||
F560C2FF1811212200487A7D /* RegisterMonoModules.h */,
|
||||
);
|
||||
|
@ -684,35 +587,6 @@
|
|||
F5BC88BD17F2959400F0D1DD /* GenesisEngineIos-Info.plist in Resources */,
|
||||
F560C2F018111C0700487A7D /* ViewController_iPad.xib in Resources */,
|
||||
F560C2F118111C0700487A7D /* ViewController_iPhone.xib in Resources */,
|
||||
F5EFE69418BC442000D585CC /* Asset in Resources */,
|
||||
F5EFE69518BC442000D585CC /* CompressRes in Resources */,
|
||||
F5EFE69618BC442000D585CC /* CompressUI in Resources */,
|
||||
F5EFE69718BC442000D585CC /* Google_UIMedia in Resources */,
|
||||
F5EFE69818BC442000D585CC /* JYPK in Resources */,
|
||||
F5EFE69918BC442000D585CC /* Lightmap in Resources */,
|
||||
F5EFE69A18BC442000D585CC /* logfiles in Resources */,
|
||||
F5EFE69B18BC442000D585CC /* Mesh in Resources */,
|
||||
F5EFE69C18BC442000D585CC /* Physics in Resources */,
|
||||
F5EFE69D18BC442000D585CC /* preview in Resources */,
|
||||
F5EFE69E18BC442000D585CC /* QMShader in Resources */,
|
||||
F5EFE69F18BC442000D585CC /* Scene in Resources */,
|
||||
F5EFE6A018BC442000D585CC /* Script in Resources */,
|
||||
F5EFE6A118BC442000D585CC /* Shader in Resources */,
|
||||
F5EFE6A218BC442000D585CC /* Sharp.Genesis in Resources */,
|
||||
F5EFE6A318BC442000D585CC /* System in Resources */,
|
||||
F5EFE6A418BC442000D585CC /* toolchain in Resources */,
|
||||
F5EFE6A518BC442000D585CC /* UIMedia in Resources */,
|
||||
F5EFE6A618BC442000D585CC /* UserDefCSharp in Resources */,
|
||||
F5EFE6BC18BC443400D585CC /* Mono.Security.dll in Resources */,
|
||||
F5EFE6BD18BC443400D585CC /* mscorlib.dll in Resources */,
|
||||
F5EFE6BE18BC443400D585CC /* ScriptFrameworkLibrary.dll in Resources */,
|
||||
F5EFE6BF18BC443400D585CC /* ScriptGUILibrary.dll in Resources */,
|
||||
F5EFE6C018BC443400D585CC /* ScriptRuntimeLibrary.dll in Resources */,
|
||||
F5EFE6C118BC443400D585CC /* System.Configuration.dll in Resources */,
|
||||
F5EFE6C218BC443400D585CC /* System.dll in Resources */,
|
||||
F5EFE6C318BC443400D585CC /* System.Security.dll in Resources */,
|
||||
F5EFE6C418BC443400D585CC /* System.Xml.dll in Resources */,
|
||||
F5EFE6C518BC443400D585CC /* UserDefCSharp.dll in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -723,18 +597,8 @@
|
|||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F5EFE6C618BC444F00D585CC /* Mono.Security.dll in Sources */,
|
||||
587F8B4318FB8FB4007563A8 /* TextViewController.mm in Sources */,
|
||||
F5EFE6C718BC444F00D585CC /* mscorlib.dll in Sources */,
|
||||
F5EFE6C818BC444F00D585CC /* ScriptFrameworkLibrary.dll in Sources */,
|
||||
F5EFE6C918BC444F00D585CC /* ScriptGUILibrary.dll in Sources */,
|
||||
F5EFE6CA18BC444F00D585CC /* ScriptRuntimeLibrary.dll in Sources */,
|
||||
F5EFE6CB18BC444F00D585CC /* System.Configuration.dll in Sources */,
|
||||
F5EFE6CC18BC444F00D585CC /* System.dll in Sources */,
|
||||
F5EFE6CD18BC444F00D585CC /* System.Security.dll in Sources */,
|
||||
F5EFE6CE18BC444F00D585CC /* System.Xml.dll in Sources */,
|
||||
587F8B4218FB8FB4007563A8 /* OCAndCPlusInterface.mm in Sources */,
|
||||
F5EFE6CF18BC444F00D585CC /* UserDefCSharp.dll in Sources */,
|
||||
F5BC88B617F2959400F0D1DD /* AppDelegate.mm in Sources */,
|
||||
F5BC88BE17F2959400F0D1DD /* main.mm in Sources */,
|
||||
F5BC88BF17F2959400F0D1DD /* ViewController.mm in Sources */,
|
||||
|
@ -849,7 +713,9 @@
|
|||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/../Librarys\"",
|
||||
/Users/qisong/Desktop/guopeng/new/genesis_externals/Librarys/PhysX3/Ios,
|
||||
);
|
||||
ONLY_ACTIVE_ARCH = NO;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
USER_HEADER_SEARCH_PATHS = ../;
|
||||
WRAPPER_EXTENSION = app;
|
||||
|
@ -871,7 +737,9 @@
|
|||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/../Librarys\"",
|
||||
/Users/qisong/Desktop/guopeng/new/genesis_externals/Librarys/PhysX3/Ios,
|
||||
);
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
USER_HEADER_SEARCH_PATHS = ../;
|
||||
WRAPPER_EXTENSION = app;
|
||||
|
|
|
@ -7,6 +7,12 @@
|
|||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
255433DC192D909700DD4AA4 /* editstatus.cc in Sources */ = {isa = PBXBuildFile; fileRef = 255433D8192D909700DD4AA4 /* editstatus.cc */; };
|
||||
255433DD192D909700DD4AA4 /* simplecamera.cc in Sources */ = {isa = PBXBuildFile; fileRef = 255433DA192D909700DD4AA4 /* simplecamera.cc */; };
|
||||
255433E0192D90D500DD4AA4 /* RenderTargetSuite.cc in Sources */ = {isa = PBXBuildFile; fileRef = 255433DE192D90D500DD4AA4 /* RenderTargetSuite.cc */; };
|
||||
2561E7331929DFE200F41739 /* script_hook.cc in Sources */ = {isa = PBXBuildFile; fileRef = 2561E7321929DFE200F41739 /* script_hook.cc */; };
|
||||
5850EF201935F045008B3597 /* guirenderobject.cc in Sources */ = {isa = PBXBuildFile; fileRef = 5850EF1C1935F045008B3597 /* guirenderobject.cc */; };
|
||||
5850EF211935F045008B3597 /* guiscene.cc in Sources */ = {isa = PBXBuildFile; fileRef = 5850EF1E1935F045008B3597 /* guiscene.cc */; };
|
||||
58548DAE19061FC400BA92A0 /* script_app.cc in Sources */ = {isa = PBXBuildFile; fileRef = 58548DAC19061FC400BA92A0 /* script_app.cc */; };
|
||||
82C7DF6B192222D2002CE939 /* FileData.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82C7DF5D192222D2002CE939 /* FileData.cc */; };
|
||||
82C7DF6C192222D2002CE939 /* FileTable.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82C7DF60192222D2002CE939 /* FileTable.cc */; };
|
||||
|
@ -14,6 +20,31 @@
|
|||
82C7DF6E192222D2002CE939 /* PackageSystem.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82C7DF65192222D2002CE939 /* PackageSystem.cc */; };
|
||||
82C7DF6F192222D2002CE939 /* PackageTool.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82C7DF67192222D2002CE939 /* PackageTool.cc */; };
|
||||
82C7DF70192222D2002CE939 /* PackageUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82C7DF69192222D2002CE939 /* PackageUtil.cc */; };
|
||||
82D17E6819371431007B315E /* PhysicsBodyComponent.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E6119371431007B315E /* PhysicsBodyComponent.cc */; };
|
||||
82D17E6919371431007B315E /* PhysicsBodyComponentSerialization.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E6319371431007B315E /* PhysicsBodyComponentSerialization.cc */; };
|
||||
82D17E6A19371431007B315E /* PhysicsFeature.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E6419371431007B315E /* PhysicsFeature.cc */; };
|
||||
82D17E6B19371431007B315E /* UserReport.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E6619371431007B315E /* UserReport.cc */; };
|
||||
82D17E8C1937144F007B315E /* PhysicsBoxShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E6C1937144F007B315E /* PhysicsBoxShape.cc */; };
|
||||
82D17E8D1937144F007B315E /* PhysicsCapsuleShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E6E1937144F007B315E /* PhysicsCapsuleShape.cc */; };
|
||||
82D17E8E1937144F007B315E /* PhysicsConvexShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E701937144F007B315E /* PhysicsConvexShape.cc */; };
|
||||
82D17E8F1937144F007B315E /* PhysicsDynamic.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E731937144F007B315E /* PhysicsDynamic.cc */; };
|
||||
82D17E901937144F007B315E /* PhysicsEntity.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E751937144F007B315E /* PhysicsEntity.cc */; };
|
||||
82D17E911937144F007B315E /* PhysicsMaterial.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E771937144F007B315E /* PhysicsMaterial.cc */; };
|
||||
82D17E921937144F007B315E /* PhysicsMeshShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E791937144F007B315E /* PhysicsMeshShape.cc */; };
|
||||
82D17E931937144F007B315E /* PhysicsPlaneShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E7B1937144F007B315E /* PhysicsPlaneShape.cc */; };
|
||||
82D17E941937144F007B315E /* PhysicsRole.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E7D1937144F007B315E /* PhysicsRole.cc */; };
|
||||
82D17E951937144F007B315E /* PhysicsServer.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E7F1937144F007B315E /* PhysicsServer.cc */; };
|
||||
82D17E961937144F007B315E /* PhysicsShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E811937144F007B315E /* PhysicsShape.cc */; };
|
||||
82D17E971937144F007B315E /* PhysicsSphereShape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E831937144F007B315E /* PhysicsSphereShape.cc */; };
|
||||
82D17E981937144F007B315E /* PhysicsStatic.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E851937144F007B315E /* PhysicsStatic.cc */; };
|
||||
82D17E991937144F007B315E /* PhysicsTerrian.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E871937144F007B315E /* PhysicsTerrian.cc */; };
|
||||
82D17E9A1937144F007B315E /* UserStream.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82D17E8A1937144F007B315E /* UserStream.cc */; };
|
||||
82F91395193748BD00BB1943 /* scriptbind_physicsbody_component.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82F9138F193748BD00BB1943 /* scriptbind_physicsbody_component.cc */; };
|
||||
82F91396193748BD00BB1943 /* scriptbind_physicsboxshape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82F91390193748BD00BB1943 /* scriptbind_physicsboxshape.cc */; };
|
||||
82F91397193748BD00BB1943 /* scriptbind_physicscapsuleshape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82F91391193748BD00BB1943 /* scriptbind_physicscapsuleshape.cc */; };
|
||||
82F91398193748BD00BB1943 /* scriptbind_physicsmeshshape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82F91392193748BD00BB1943 /* scriptbind_physicsmeshshape.cc */; };
|
||||
82F91399193748BD00BB1943 /* scriptbind_physicsscene.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82F91393193748BD00BB1943 /* scriptbind_physicsscene.cc */; };
|
||||
82F9139A193748BD00BB1943 /* scriptbind_physicssphereshape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 82F91394193748BD00BB1943 /* scriptbind_physicssphereshape.cc */; };
|
||||
F504B89B18BC39F800B7C723 /* SoundInterface.cc in Sources */ = {isa = PBXBuildFile; fileRef = F504B89918BC39F800B7C723 /* SoundInterface.cc */; };
|
||||
F52905801830C2DC0081A084 /* CGTool.cc in Sources */ = {isa = PBXBuildFile; fileRef = F52905781830C2DC0081A084 /* CGTool.cc */; };
|
||||
F52905811830C2DC0081A084 /* D3DCompiler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F529057A1830C2DC0081A084 /* D3DCompiler.cc */; };
|
||||
|
@ -860,6 +891,18 @@
|
|||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
255433D8192D909700DD4AA4 /* editstatus.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = editstatus.cc; sourceTree = "<group>"; };
|
||||
255433D9192D909700DD4AA4 /* editstatus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = editstatus.h; sourceTree = "<group>"; };
|
||||
255433DA192D909700DD4AA4 /* simplecamera.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = simplecamera.cc; sourceTree = "<group>"; };
|
||||
255433DB192D909700DD4AA4 /* simplecamera.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = simplecamera.h; sourceTree = "<group>"; };
|
||||
255433DE192D90D500DD4AA4 /* RenderTargetSuite.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTargetSuite.cc; sourceTree = "<group>"; };
|
||||
255433DF192D90D500DD4AA4 /* RenderTargetSuite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTargetSuite.h; sourceTree = "<group>"; };
|
||||
2561E7321929DFE200F41739 /* script_hook.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = script_hook.cc; sourceTree = "<group>"; };
|
||||
2561E7341929DFEC00F41739 /* script_hook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = script_hook.h; sourceTree = "<group>"; };
|
||||
5850EF1C1935F045008B3597 /* guirenderobject.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = guirenderobject.cc; sourceTree = "<group>"; };
|
||||
5850EF1D1935F045008B3597 /* guirenderobject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = guirenderobject.h; sourceTree = "<group>"; };
|
||||
5850EF1E1935F045008B3597 /* guiscene.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = guiscene.cc; sourceTree = "<group>"; };
|
||||
5850EF1F1935F045008B3597 /* guiscene.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = guiscene.h; sourceTree = "<group>"; };
|
||||
58548DAC19061FC400BA92A0 /* script_app.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = script_app.cc; sourceTree = "<group>"; };
|
||||
58548DAD19061FC400BA92A0 /* script_app.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = script_app.h; sourceTree = "<group>"; };
|
||||
587A3D9A18F68D15000ED13A /* OCAndCPlusInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OCAndCPlusInterface.h; sourceTree = "<group>"; };
|
||||
|
@ -890,6 +933,88 @@
|
|||
82C7DF68192222D2002CE939 /* PackageTool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PackageTool.h; sourceTree = "<group>"; };
|
||||
82C7DF69192222D2002CE939 /* PackageUtil.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PackageUtil.cc; sourceTree = "<group>"; };
|
||||
82C7DF6A192222D2002CE939 /* PackageUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PackageUtil.h; sourceTree = "<group>"; };
|
||||
82D17E6119371431007B315E /* PhysicsBodyComponent.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsBodyComponent.cc; path = physXfeature/PhysicsBodyComponent.cc; sourceTree = "<group>"; };
|
||||
82D17E6219371431007B315E /* PhysicsBodyComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsBodyComponent.h; path = physXfeature/PhysicsBodyComponent.h; sourceTree = "<group>"; };
|
||||
82D17E6319371431007B315E /* PhysicsBodyComponentSerialization.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsBodyComponentSerialization.cc; path = physXfeature/PhysicsBodyComponentSerialization.cc; sourceTree = "<group>"; };
|
||||
82D17E6419371431007B315E /* PhysicsFeature.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsFeature.cc; path = physXfeature/PhysicsFeature.cc; sourceTree = "<group>"; };
|
||||
82D17E6519371431007B315E /* PhysicsFeature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsFeature.h; path = physXfeature/PhysicsFeature.h; sourceTree = "<group>"; };
|
||||
82D17E6619371431007B315E /* UserReport.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UserReport.cc; path = physXfeature/UserReport.cc; sourceTree = "<group>"; };
|
||||
82D17E6719371431007B315E /* UserReport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UserReport.h; path = physXfeature/UserReport.h; sourceTree = "<group>"; };
|
||||
82D17E6C1937144F007B315E /* PhysicsBoxShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsBoxShape.cc; path = physXfeature/physicsCore/PhysicsBoxShape.cc; sourceTree = "<group>"; };
|
||||
82D17E6D1937144F007B315E /* PhysicsBoxShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsBoxShape.h; path = physXfeature/physicsCore/PhysicsBoxShape.h; sourceTree = "<group>"; };
|
||||
82D17E6E1937144F007B315E /* PhysicsCapsuleShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsCapsuleShape.cc; path = physXfeature/physicsCore/PhysicsCapsuleShape.cc; sourceTree = "<group>"; };
|
||||
82D17E6F1937144F007B315E /* PhysicsCapsuleShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsCapsuleShape.h; path = physXfeature/physicsCore/PhysicsCapsuleShape.h; sourceTree = "<group>"; };
|
||||
82D17E701937144F007B315E /* PhysicsConvexShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsConvexShape.cc; path = physXfeature/physicsCore/PhysicsConvexShape.cc; sourceTree = "<group>"; };
|
||||
82D17E711937144F007B315E /* PhysicsConvexShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsConvexShape.h; path = physXfeature/physicsCore/PhysicsConvexShape.h; sourceTree = "<group>"; };
|
||||
82D17E721937144F007B315E /* PhysicsDeclaration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsDeclaration.h; path = physXfeature/physicsCore/PhysicsDeclaration.h; sourceTree = "<group>"; };
|
||||
82D17E731937144F007B315E /* PhysicsDynamic.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsDynamic.cc; path = physXfeature/physicsCore/PhysicsDynamic.cc; sourceTree = "<group>"; };
|
||||
82D17E741937144F007B315E /* PhysicsDynamic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsDynamic.h; path = physXfeature/physicsCore/PhysicsDynamic.h; sourceTree = "<group>"; };
|
||||
82D17E751937144F007B315E /* PhysicsEntity.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsEntity.cc; path = physXfeature/physicsCore/PhysicsEntity.cc; sourceTree = "<group>"; };
|
||||
82D17E761937144F007B315E /* PhysicsEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsEntity.h; path = physXfeature/physicsCore/PhysicsEntity.h; sourceTree = "<group>"; };
|
||||
82D17E771937144F007B315E /* PhysicsMaterial.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsMaterial.cc; path = physXfeature/physicsCore/PhysicsMaterial.cc; sourceTree = "<group>"; };
|
||||
82D17E781937144F007B315E /* PhysicsMaterial.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsMaterial.h; path = physXfeature/physicsCore/PhysicsMaterial.h; sourceTree = "<group>"; };
|
||||
82D17E791937144F007B315E /* PhysicsMeshShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsMeshShape.cc; path = physXfeature/physicsCore/PhysicsMeshShape.cc; sourceTree = "<group>"; };
|
||||
82D17E7A1937144F007B315E /* PhysicsMeshShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsMeshShape.h; path = physXfeature/physicsCore/PhysicsMeshShape.h; sourceTree = "<group>"; };
|
||||
82D17E7B1937144F007B315E /* PhysicsPlaneShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsPlaneShape.cc; path = physXfeature/physicsCore/PhysicsPlaneShape.cc; sourceTree = "<group>"; };
|
||||
82D17E7C1937144F007B315E /* PhysicsPlaneShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsPlaneShape.h; path = physXfeature/physicsCore/PhysicsPlaneShape.h; sourceTree = "<group>"; };
|
||||
82D17E7D1937144F007B315E /* PhysicsRole.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsRole.cc; path = physXfeature/physicsCore/PhysicsRole.cc; sourceTree = "<group>"; };
|
||||
82D17E7E1937144F007B315E /* PhysicsRole.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsRole.h; path = physXfeature/physicsCore/PhysicsRole.h; sourceTree = "<group>"; };
|
||||
82D17E7F1937144F007B315E /* PhysicsServer.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsServer.cc; path = physXfeature/physicsCore/PhysicsServer.cc; sourceTree = "<group>"; };
|
||||
82D17E801937144F007B315E /* PhysicsServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsServer.h; path = physXfeature/physicsCore/PhysicsServer.h; sourceTree = "<group>"; };
|
||||
82D17E811937144F007B315E /* PhysicsShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsShape.cc; path = physXfeature/physicsCore/PhysicsShape.cc; sourceTree = "<group>"; };
|
||||
82D17E821937144F007B315E /* PhysicsShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsShape.h; path = physXfeature/physicsCore/PhysicsShape.h; sourceTree = "<group>"; };
|
||||
82D17E831937144F007B315E /* PhysicsSphereShape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsSphereShape.cc; path = physXfeature/physicsCore/PhysicsSphereShape.cc; sourceTree = "<group>"; };
|
||||
82D17E841937144F007B315E /* PhysicsSphereShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsSphereShape.h; path = physXfeature/physicsCore/PhysicsSphereShape.h; sourceTree = "<group>"; };
|
||||
82D17E851937144F007B315E /* PhysicsStatic.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsStatic.cc; path = physXfeature/physicsCore/PhysicsStatic.cc; sourceTree = "<group>"; };
|
||||
82D17E861937144F007B315E /* PhysicsStatic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsStatic.h; path = physXfeature/physicsCore/PhysicsStatic.h; sourceTree = "<group>"; };
|
||||
82D17E871937144F007B315E /* PhysicsTerrian.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhysicsTerrian.cc; path = physXfeature/physicsCore/PhysicsTerrian.cc; sourceTree = "<group>"; };
|
||||
82D17E881937144F007B315E /* PhysicsTerrian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsTerrian.h; path = physXfeature/physicsCore/PhysicsTerrian.h; sourceTree = "<group>"; };
|
||||
82D17E891937144F007B315E /* PhysicsUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhysicsUtil.h; path = physXfeature/physicsCore/PhysicsUtil.h; sourceTree = "<group>"; };
|
||||
82D17E8A1937144F007B315E /* UserStream.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UserStream.cc; path = physXfeature/physicsCore/UserStream.cc; sourceTree = "<group>"; };
|
||||
82D17E8B1937144F007B315E /* UserStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UserStream.h; path = physXfeature/physicsCore/UserStream.h; sourceTree = "<group>"; };
|
||||
82F9138F193748BD00BB1943 /* scriptbind_physicsbody_component.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptbind_physicsbody_component.cc; sourceTree = "<group>"; };
|
||||
82F91390193748BD00BB1943 /* scriptbind_physicsboxshape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptbind_physicsboxshape.cc; sourceTree = "<group>"; };
|
||||
82F91391193748BD00BB1943 /* scriptbind_physicscapsuleshape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptbind_physicscapsuleshape.cc; sourceTree = "<group>"; };
|
||||
82F91392193748BD00BB1943 /* scriptbind_physicsmeshshape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptbind_physicsmeshshape.cc; sourceTree = "<group>"; };
|
||||
82F91393193748BD00BB1943 /* scriptbind_physicsscene.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptbind_physicsscene.cc; sourceTree = "<group>"; };
|
||||
82F91394193748BD00BB1943 /* scriptbind_physicssphereshape.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptbind_physicssphereshape.cc; sourceTree = "<group>"; };
|
||||
82F9139B193749C700BB1943 /* scriptbind_PhysicsScene_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsScene_register.h; sourceTree = "<group>"; };
|
||||
82F9139D19374A4400BB1943 /* bind_actor.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_actor.xml; sourceTree = "<group>"; };
|
||||
82F9139E19374A4400BB1943 /* bind_actormanager.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_actormanager.xml; sourceTree = "<group>"; };
|
||||
82F9139F19374A4400BB1943 /* bind_animation_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_animation_component.xml; sourceTree = "<group>"; };
|
||||
82F913A019374A4400BB1943 /* bind_application.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_application.xml; sourceTree = "<group>"; };
|
||||
82F913A119374A4400BB1943 /* bind_cameracomponent.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_cameracomponent.xml; sourceTree = "<group>"; };
|
||||
82F913A219374A4400BB1943 /* bind_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_component.xml; sourceTree = "<group>"; };
|
||||
82F913A319374A4400BB1943 /* bind_lightcomponent.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_lightcomponent.xml; sourceTree = "<group>"; };
|
||||
82F913A419374A4400BB1943 /* bind_scene.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_scene.xml; sourceTree = "<group>"; };
|
||||
82F913A519374A4400BB1943 /* bind_soundchorusfilter_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundchorusfilter_component.xml; sourceTree = "<group>"; };
|
||||
82F913A619374A4400BB1943 /* bind_sounddistortionfilter_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_sounddistortionfilter_component.xml; sourceTree = "<group>"; };
|
||||
82F913A719374A4400BB1943 /* bind_soundechofilter_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundechofilter_component.xml; sourceTree = "<group>"; };
|
||||
82F913A819374A4400BB1943 /* bind_soundhighpassfilter_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundhighpassfilter_component.xml; sourceTree = "<group>"; };
|
||||
82F913A919374A4400BB1943 /* bind_soundlowpassfilter_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundlowpassfilter_component.xml; sourceTree = "<group>"; };
|
||||
82F913AA19374A4400BB1943 /* bind_soundreverb_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundreverb_component.xml; sourceTree = "<group>"; };
|
||||
82F913AB19374A4400BB1943 /* bind_soundreverbfilter_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundreverbfilter_component.xml; sourceTree = "<group>"; };
|
||||
82F913AC19374A4400BB1943 /* bind_soundsource_component.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = bind_soundsource_component.xml; sourceTree = "<group>"; };
|
||||
82F913AD19374A4400BB1943 /* scriptbind_ActorManager_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_ActorManager_register.h; sourceTree = "<group>"; };
|
||||
82F913AE19374A4400BB1943 /* scriptbind_Actor_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_Actor_register.h; sourceTree = "<group>"; };
|
||||
82F913AF19374A4400BB1943 /* scriptbind_AnimationComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_AnimationComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913B019374A4400BB1943 /* scriptbind_Application_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_Application_register.h; sourceTree = "<group>"; };
|
||||
82F913B119374A4400BB1943 /* scriptbind_CameraComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_CameraComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913B219374A4400BB1943 /* scriptbind_Component_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_Component_register.h; sourceTree = "<group>"; };
|
||||
82F913B319374A4400BB1943 /* scriptbind_LightComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_LightComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913B419374A4400BB1943 /* scriptbind_PhysicsBodyComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsBodyComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913B519374A4400BB1943 /* scriptbind_PhysicsBoxShape_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsBoxShape_register.h; sourceTree = "<group>"; };
|
||||
82F913B619374A4400BB1943 /* scriptbind_PhysicsCapsuleShape_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsCapsuleShape_register.h; sourceTree = "<group>"; };
|
||||
82F913B719374A4400BB1943 /* scriptbind_PhysicsMeshShape_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsMeshShape_register.h; sourceTree = "<group>"; };
|
||||
82F913B819374A4400BB1943 /* scriptbind_PhysicsScene_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsScene_register.h; sourceTree = "<group>"; };
|
||||
82F913B919374A4400BB1943 /* scriptbind_PhysicsShape_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsShape_register.h; sourceTree = "<group>"; };
|
||||
82F913BA19374A4400BB1943 /* scriptbind_PhysicsSphere_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_PhysicsSphere_register.h; sourceTree = "<group>"; };
|
||||
82F913BB19374A4400BB1943 /* scriptbind_Scene_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_Scene_register.h; sourceTree = "<group>"; };
|
||||
82F913BC19374A4400BB1943 /* scriptbind_SoundEchoFilterComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_SoundEchoFilterComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913BD19374A4400BB1943 /* scriptbind_SoundLowPassFilterComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_SoundLowPassFilterComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913BE19374A4400BB1943 /* scriptbind_SoundReverbFilterComponent_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_SoundReverbFilterComponent_register.h; sourceTree = "<group>"; };
|
||||
82F913BF19374A4400BB1943 /* scriptbind_SoundReverbZone_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_SoundReverbZone_register.h; sourceTree = "<group>"; };
|
||||
82F913C019374A4400BB1943 /* scriptbind_projector_component_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptbind_projector_component_register.h; sourceTree = "<group>"; };
|
||||
F504B89918BC39F800B7C723 /* SoundInterface.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SoundInterface.cc; sourceTree = "<group>"; };
|
||||
F504B89A18BC39F800B7C723 /* SoundInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoundInterface.h; sourceTree = "<group>"; };
|
||||
F52905781830C2DC0081A084 /* CGTool.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CGTool.cc; sourceTree = "<group>"; };
|
||||
|
@ -2858,6 +2983,111 @@
|
|||
path = ../../packagetool;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
82D17E5E193713CA007B315E /* PhysXFeature */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82D17E60193713EE007B315E /* Core */,
|
||||
82D17E5F193713DD007B315E /* Components */,
|
||||
);
|
||||
name = PhysXFeature;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
82D17E5F193713DD007B315E /* Components */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82D17E6119371431007B315E /* PhysicsBodyComponent.cc */,
|
||||
82D17E6219371431007B315E /* PhysicsBodyComponent.h */,
|
||||
82D17E6319371431007B315E /* PhysicsBodyComponentSerialization.cc */,
|
||||
82D17E6419371431007B315E /* PhysicsFeature.cc */,
|
||||
82D17E6519371431007B315E /* PhysicsFeature.h */,
|
||||
82D17E6619371431007B315E /* UserReport.cc */,
|
||||
82D17E6719371431007B315E /* UserReport.h */,
|
||||
);
|
||||
name = Components;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
82D17E60193713EE007B315E /* Core */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82D17E6C1937144F007B315E /* PhysicsBoxShape.cc */,
|
||||
82D17E6D1937144F007B315E /* PhysicsBoxShape.h */,
|
||||
82D17E6E1937144F007B315E /* PhysicsCapsuleShape.cc */,
|
||||
82D17E6F1937144F007B315E /* PhysicsCapsuleShape.h */,
|
||||
82D17E701937144F007B315E /* PhysicsConvexShape.cc */,
|
||||
82D17E711937144F007B315E /* PhysicsConvexShape.h */,
|
||||
82D17E721937144F007B315E /* PhysicsDeclaration.h */,
|
||||
82D17E731937144F007B315E /* PhysicsDynamic.cc */,
|
||||
82D17E741937144F007B315E /* PhysicsDynamic.h */,
|
||||
82D17E751937144F007B315E /* PhysicsEntity.cc */,
|
||||
82D17E761937144F007B315E /* PhysicsEntity.h */,
|
||||
82D17E771937144F007B315E /* PhysicsMaterial.cc */,
|
||||
82D17E781937144F007B315E /* PhysicsMaterial.h */,
|
||||
82D17E791937144F007B315E /* PhysicsMeshShape.cc */,
|
||||
82D17E7A1937144F007B315E /* PhysicsMeshShape.h */,
|
||||
82D17E7B1937144F007B315E /* PhysicsPlaneShape.cc */,
|
||||
82D17E7C1937144F007B315E /* PhysicsPlaneShape.h */,
|
||||
82D17E7D1937144F007B315E /* PhysicsRole.cc */,
|
||||
82D17E7E1937144F007B315E /* PhysicsRole.h */,
|
||||
82D17E7F1937144F007B315E /* PhysicsServer.cc */,
|
||||
82D17E801937144F007B315E /* PhysicsServer.h */,
|
||||
82D17E811937144F007B315E /* PhysicsShape.cc */,
|
||||
82D17E821937144F007B315E /* PhysicsShape.h */,
|
||||
82D17E831937144F007B315E /* PhysicsSphereShape.cc */,
|
||||
82D17E841937144F007B315E /* PhysicsSphereShape.h */,
|
||||
82D17E851937144F007B315E /* PhysicsStatic.cc */,
|
||||
82D17E861937144F007B315E /* PhysicsStatic.h */,
|
||||
82D17E871937144F007B315E /* PhysicsTerrian.cc */,
|
||||
82D17E881937144F007B315E /* PhysicsTerrian.h */,
|
||||
82D17E891937144F007B315E /* PhysicsUtil.h */,
|
||||
82D17E8A1937144F007B315E /* UserStream.cc */,
|
||||
82D17E8B1937144F007B315E /* UserStream.h */,
|
||||
);
|
||||
name = Core;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
82F9139C19374A4400BB1943 /* autogen */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82F9139D19374A4400BB1943 /* bind_actor.xml */,
|
||||
82F9139E19374A4400BB1943 /* bind_actormanager.xml */,
|
||||
82F9139F19374A4400BB1943 /* bind_animation_component.xml */,
|
||||
82F913A019374A4400BB1943 /* bind_application.xml */,
|
||||
82F913A119374A4400BB1943 /* bind_cameracomponent.xml */,
|
||||
82F913A219374A4400BB1943 /* bind_component.xml */,
|
||||
82F913A319374A4400BB1943 /* bind_lightcomponent.xml */,
|
||||
82F913A419374A4400BB1943 /* bind_scene.xml */,
|
||||
82F913A519374A4400BB1943 /* bind_soundchorusfilter_component.xml */,
|
||||
82F913A619374A4400BB1943 /* bind_sounddistortionfilter_component.xml */,
|
||||
82F913A719374A4400BB1943 /* bind_soundechofilter_component.xml */,
|
||||
82F913A819374A4400BB1943 /* bind_soundhighpassfilter_component.xml */,
|
||||
82F913A919374A4400BB1943 /* bind_soundlowpassfilter_component.xml */,
|
||||
82F913AA19374A4400BB1943 /* bind_soundreverb_component.xml */,
|
||||
82F913AB19374A4400BB1943 /* bind_soundreverbfilter_component.xml */,
|
||||
82F913AC19374A4400BB1943 /* bind_soundsource_component.xml */,
|
||||
82F913AD19374A4400BB1943 /* scriptbind_ActorManager_register.h */,
|
||||
82F913AE19374A4400BB1943 /* scriptbind_Actor_register.h */,
|
||||
82F913AF19374A4400BB1943 /* scriptbind_AnimationComponent_register.h */,
|
||||
82F913B019374A4400BB1943 /* scriptbind_Application_register.h */,
|
||||
82F913B119374A4400BB1943 /* scriptbind_CameraComponent_register.h */,
|
||||
82F913B219374A4400BB1943 /* scriptbind_Component_register.h */,
|
||||
82F913B319374A4400BB1943 /* scriptbind_LightComponent_register.h */,
|
||||
82F913B419374A4400BB1943 /* scriptbind_PhysicsBodyComponent_register.h */,
|
||||
82F913B519374A4400BB1943 /* scriptbind_PhysicsBoxShape_register.h */,
|
||||
82F913B619374A4400BB1943 /* scriptbind_PhysicsCapsuleShape_register.h */,
|
||||
82F913B719374A4400BB1943 /* scriptbind_PhysicsMeshShape_register.h */,
|
||||
82F913B819374A4400BB1943 /* scriptbind_PhysicsScene_register.h */,
|
||||
82F913B919374A4400BB1943 /* scriptbind_PhysicsShape_register.h */,
|
||||
82F913BA19374A4400BB1943 /* scriptbind_PhysicsSphere_register.h */,
|
||||
82F913BB19374A4400BB1943 /* scriptbind_Scene_register.h */,
|
||||
82F913BC19374A4400BB1943 /* scriptbind_SoundEchoFilterComponent_register.h */,
|
||||
82F913BD19374A4400BB1943 /* scriptbind_SoundLowPassFilterComponent_register.h */,
|
||||
82F913BE19374A4400BB1943 /* scriptbind_SoundReverbFilterComponent_register.h */,
|
||||
82F913BF19374A4400BB1943 /* scriptbind_SoundReverbZone_register.h */,
|
||||
82F913C019374A4400BB1943 /* scriptbind_projector_component_register.h */,
|
||||
);
|
||||
name = autogen;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F52905931830CA550081A084 /* ShaderTemplate */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
@ -4057,6 +4287,7 @@
|
|||
F5F4911617E1A66100361F45 /* app */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82D17E5E193713CA007B315E /* PhysXFeature */,
|
||||
F560C2AC181109EB00487A7D /* spritebacth */,
|
||||
F5F49CB617E1C55900361F45 /* vegetationfeature */,
|
||||
F5F4911717E1A66100361F45 /* ALSystemFeature */,
|
||||
|
@ -4107,6 +4338,10 @@
|
|||
F5F4912017E1A66100361F45 /* appframework */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
255433D8192D909700DD4AA4 /* editstatus.cc */,
|
||||
255433D9192D909700DD4AA4 /* editstatus.h */,
|
||||
255433DA192D909700DD4AA4 /* simplecamera.cc */,
|
||||
255433DB192D909700DD4AA4 /* simplecamera.h */,
|
||||
F5E8AB301867EABF006C5348 /* profiletool.cc */,
|
||||
F5E8AB311867EABF006C5348 /* profiletool.h */,
|
||||
F5F4912117E1A66100361F45 /* actor.cc */,
|
||||
|
@ -4303,6 +4538,10 @@
|
|||
F5F491C117E1A66200361F45 /* guifeature */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
5850EF1C1935F045008B3597 /* guirenderobject.cc */,
|
||||
5850EF1D1935F045008B3597 /* guirenderobject.h */,
|
||||
5850EF1E1935F045008B3597 /* guiscene.cc */,
|
||||
5850EF1F1935F045008B3597 /* guiscene.h */,
|
||||
F5F491C217E1A66200361F45 /* androidguiinputhandler.cc */,
|
||||
F5F491C317E1A66200361F45 /* androidguiinputhandler.h */,
|
||||
F5F491C417E1A66200361F45 /* FontFeature.cc */,
|
||||
|
@ -4386,6 +4625,12 @@
|
|||
F5F4923A17E1A66200361F45 /* scriptbind */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82F9138F193748BD00BB1943 /* scriptbind_physicsbody_component.cc */,
|
||||
82F91390193748BD00BB1943 /* scriptbind_physicsboxshape.cc */,
|
||||
82F91391193748BD00BB1943 /* scriptbind_physicscapsuleshape.cc */,
|
||||
82F91392193748BD00BB1943 /* scriptbind_physicsmeshshape.cc */,
|
||||
82F91393193748BD00BB1943 /* scriptbind_physicsscene.cc */,
|
||||
82F91394193748BD00BB1943 /* scriptbind_physicssphereshape.cc */,
|
||||
F5DA5AE0185826380083349F /* scriptbind_physicsshape.cc */,
|
||||
F529059A1830CBA40081A084 /* scriptbind_projector_component.cc */,
|
||||
F560C2C018110A0500487A7D /* scriptbind_camera.cc */,
|
||||
|
@ -4430,6 +4675,8 @@
|
|||
F5F4923B17E1A66200361F45 /* autogen */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
82F9139C19374A4400BB1943 /* autogen */,
|
||||
82F9139B193749C700BB1943 /* scriptbind_PhysicsScene_register.h */,
|
||||
F5F4923C17E1A66200361F45 /* bind_actor.xml */,
|
||||
F5F4923D17E1A66200361F45 /* bind_actormanager.xml */,
|
||||
F5F4923E17E1A66200361F45 /* bind_animation_component.xml */,
|
||||
|
@ -4476,6 +4723,8 @@
|
|||
F5F492AE17E1A66200361F45 /* scriptfeature */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
2561E7341929DFEC00F41739 /* script_hook.h */,
|
||||
2561E7321929DFE200F41739 /* script_hook.cc */,
|
||||
58548DAC19061FC400BA92A0 /* script_app.cc */,
|
||||
58548DAD19061FC400BA92A0 /* script_app.h */,
|
||||
F5F492AF17E1A66200361F45 /* editable_field_value.cc */,
|
||||
|
@ -5679,6 +5928,8 @@
|
|||
F5F495C317E1A66400361F45 /* graphicsystem */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
255433DE192D90D500DD4AA4 /* RenderTargetSuite.cc */,
|
||||
255433DF192D90D500DD4AA4 /* RenderTargetSuite.h */,
|
||||
F5F495C417E1A66400361F45 /* base */,
|
||||
F5F495D717E1A66400361F45 /* Camera */,
|
||||
F5F495EE17E1A66400361F45 /* CMakeLists.txt */,
|
||||
|
@ -6148,6 +6399,7 @@
|
|||
F5F4978B17E1A66500361F45 /* MyGUI_Exception.cpp in Sources */,
|
||||
F5F4978C17E1A66500361F45 /* MyGUI_FactoryManager.cpp in Sources */,
|
||||
F5F4978D17E1A66500361F45 /* MyGUI_FileLogListener.cpp in Sources */,
|
||||
82D17E6B19371431007B315E /* UserReport.cc in Sources */,
|
||||
F5F4978E17E1A66500361F45 /* MyGUI_FontManager.cpp in Sources */,
|
||||
F5F4978F17E1A66500361F45 /* MyGUI_GeometryUtility.cpp in Sources */,
|
||||
F5F4979017E1A66500361F45 /* MyGUI_Gui.cpp in Sources */,
|
||||
|
@ -6164,6 +6416,7 @@
|
|||
F5F4979B17E1A66500361F45 /* MyGUI_LogManager.cpp in Sources */,
|
||||
F5F4979C17E1A66500361F45 /* MyGUI_LogSource.cpp in Sources */,
|
||||
F5F4979D17E1A66500361F45 /* MyGUI_MainSkin.cpp in Sources */,
|
||||
82D17E961937144F007B315E /* PhysicsShape.cc in Sources */,
|
||||
F5F4979E17E1A66500361F45 /* MyGUI_MaskPickInfo.cpp in Sources */,
|
||||
F5F4979F17E1A66500361F45 /* MyGUI_MenuBar.cpp in Sources */,
|
||||
F5F497A017E1A66500361F45 /* MyGUI_MenuControl.cpp in Sources */,
|
||||
|
@ -6215,6 +6468,7 @@
|
|||
F5F497CD17E1A66500361F45 /* MyGUI_WidgetManager.cpp in Sources */,
|
||||
F5F497CE17E1A66500361F45 /* MyGUI_WidgetUserData.cpp in Sources */,
|
||||
F5F497CF17E1A66500361F45 /* MyGUI_Window.cpp in Sources */,
|
||||
255433DC192D909700DD4AA4 /* editstatus.cc in Sources */,
|
||||
F5F497D017E1A66500361F45 /* MyGUI_XmlDocument.cpp in Sources */,
|
||||
F5F4980617E1A66500361F45 /* particleColorAffector.cc in Sources */,
|
||||
F5F4980717E1A66500361F45 /* particleColorAffectorSerialization.cc in Sources */,
|
||||
|
@ -6222,11 +6476,13 @@
|
|||
F5F4980B17E1A66500361F45 /* particleFollowerAffectorSerialization.cc in Sources */,
|
||||
82C7DF6C192222D2002CE939 /* FileTable.cc in Sources */,
|
||||
F5F4980C17E1A66500361F45 /* particleGravityAffector.cc in Sources */,
|
||||
255433E0192D90D500DD4AA4 /* RenderTargetSuite.cc in Sources */,
|
||||
F5F4980D17E1A66500361F45 /* particleGravityAffectorSerialization.cc in Sources */,
|
||||
F5F4981017E1A66500361F45 /* particleLinearForceAffector.cc in Sources */,
|
||||
F5F4981117E1A66500361F45 /* particleLinearForceAffectorSerialization.cc in Sources */,
|
||||
F5F4981317E1A66500361F45 /* particleMovementAffectorSerialization.cc in Sources */,
|
||||
F5F4981417E1A66500361F45 /* particleRandomiserAffector.cc in Sources */,
|
||||
82D17E951937144F007B315E /* PhysicsServer.cc in Sources */,
|
||||
F5F4981517E1A66500361F45 /* particleRandomiserAffectorSerialization.cc in Sources */,
|
||||
F5F4981617E1A66500361F45 /* particleScaleAffector.cc in Sources */,
|
||||
F5F4981717E1A66500361F45 /* particleScaleAffectorSerialization.cc in Sources */,
|
||||
|
@ -6235,6 +6491,7 @@
|
|||
F5F4981A17E1A66500361F45 /* particleTextureRotatorAffector.cc in Sources */,
|
||||
F5F4981B17E1A66500361F45 /* particleTextureRotatorAffectorSerialization.cc in Sources */,
|
||||
F5F4981C17E1A66500361F45 /* particleVortexAffector.cc in Sources */,
|
||||
82D17E9A1937144F007B315E /* UserStream.cc in Sources */,
|
||||
F5F4981D17E1A66500361F45 /* particleVortexAffectorSerialization.cc in Sources */,
|
||||
F5F4981E17E1A66500361F45 /* particleBoxEmitter.cc in Sources */,
|
||||
F5F4981F17E1A66500361F45 /* particleBoxEmitterSerialization.cc in Sources */,
|
||||
|
@ -6353,6 +6610,7 @@
|
|||
F5F4992A17E1A66500361F45 /* visserver.cc in Sources */,
|
||||
F5F4992B17E1A66500361F45 /* viscell.cc in Sources */,
|
||||
F5F4992C17E1A66500361F45 /* visquadtree.cc in Sources */,
|
||||
2561E7331929DFE200F41739 /* script_hook.cc in Sources */,
|
||||
F5F4992D17E1A66500361F45 /* vissystembase.cc in Sources */,
|
||||
F5F4994317E1A66500361F45 /* ALSystemFeature.cc in Sources */,
|
||||
F5F4994417E1A66500361F45 /* GameIap.cc in Sources */,
|
||||
|
@ -6375,6 +6633,7 @@
|
|||
F5F4995517E1A66500361F45 /* serialization.cc in Sources */,
|
||||
F5F4995617E1A66500361F45 /* statehandler.cc in Sources */,
|
||||
F5F4995717E1A66500361F45 /* intersectutil.cc in Sources */,
|
||||
82D17E6919371431007B315E /* PhysicsBodyComponentSerialization.cc in Sources */,
|
||||
F5F4995817E1A66500361F45 /* manuresutil.cc in Sources */,
|
||||
F5F4995A17E1A66500361F45 /* mouserayutil.cc in Sources */,
|
||||
F5F4995B17E1A66500361F45 /* shadowmaputil.cc in Sources */,
|
||||
|
@ -6396,10 +6655,12 @@
|
|||
F5F4997517E1A66500361F45 /* meshrenderobject.cc in Sources */,
|
||||
F5F4997617E1A66500361F45 /* projectorcomponent.cc in Sources */,
|
||||
F5F4997717E1A66500361F45 /* projectorcomponentserialization.cc in Sources */,
|
||||
82D17E971937144F007B315E /* PhysicsSphereShape.cc in Sources */,
|
||||
F5F4997817E1A66500361F45 /* projectorrenderobject.cc in Sources */,
|
||||
F5F4997917E1A66500361F45 /* rendercomponent.cc in Sources */,
|
||||
F5F4997A17E1A66500361F45 /* rendercomponentserialization.cc in Sources */,
|
||||
F5F4997B17E1A66500361F45 /* screenmeshrenderobject.cc in Sources */,
|
||||
82D17E8C1937144F007B315E /* PhysicsBoxShape.cc in Sources */,
|
||||
F5F4997C17E1A66500361F45 /* simpleskycomponent.cc in Sources */,
|
||||
F5F4997D17E1A66500361F45 /* simpleskycomponentserialization.cc in Sources */,
|
||||
F5F4997E17E1A66500361F45 /* skeletoncomponent.cpp in Sources */,
|
||||
|
@ -6429,6 +6690,7 @@
|
|||
F5F4999C17E1A66500361F45 /* scriptbind_popupmenu.cc in Sources */,
|
||||
F5F4999D17E1A66500361F45 /* scriptbind_progressbar.cc in Sources */,
|
||||
F5F4999E17E1A66500361F45 /* scriptbind_rendertarget.cc in Sources */,
|
||||
82D17E991937144F007B315E /* PhysicsTerrian.cc in Sources */,
|
||||
F5F4999F17E1A66500361F45 /* scriptbind_scrollbar.cc in Sources */,
|
||||
F5F499A017E1A66500361F45 /* scriptbind_scrollview.cc in Sources */,
|
||||
F5F499A117E1A66500361F45 /* scriptbind_tabcontrol.cc in Sources */,
|
||||
|
@ -6444,6 +6706,7 @@
|
|||
F5F499AB17E1A66500361F45 /* guiserver.cc in Sources */,
|
||||
F5F499AC17E1A66500361F45 /* guiutility.cc in Sources */,
|
||||
F5F499AD17E1A66500361F45 /* osxguiinputhandler.cpp in Sources */,
|
||||
82D17E8E1937144F007B315E /* PhysicsConvexShape.cc in Sources */,
|
||||
F5F499AE17E1A66500361F45 /* scriptgui.cc in Sources */,
|
||||
F5F499AF17E1A66500361F45 /* win32guiinputhandler.cc in Sources */,
|
||||
F5F499B117E1A66500361F45 /* inputfeature.cc in Sources */,
|
||||
|
@ -6458,6 +6721,7 @@
|
|||
F5F499E217E1A66500361F45 /* ResourceFeature.cc in Sources */,
|
||||
F5F499E317E1A66500361F45 /* scriptbind_actor.cc in Sources */,
|
||||
F5F499E417E1A66500361F45 /* scriptbind_actor_manager.cc in Sources */,
|
||||
82D17E941937144F007B315E /* PhysicsRole.cc in Sources */,
|
||||
F5F499E517E1A66500361F45 /* scriptbind_animation_component.cc in Sources */,
|
||||
F5F499E617E1A66500361F45 /* scriptbind_application.cc in Sources */,
|
||||
F5F499E717E1A66500361F45 /* scriptbind_camera_component.cc in Sources */,
|
||||
|
@ -6481,6 +6745,7 @@
|
|||
F5F49A1D17E1A66500361F45 /* scriptbind_skeleton_component.cc in Sources */,
|
||||
F5F49A2117E1A66500361F45 /* scriptbind_soundechofilter_component.cc in Sources */,
|
||||
F5F49A2217E1A66500361F45 /* scriptbind_soundFilter_component.cc in Sources */,
|
||||
82D17E8F1937144F007B315E /* PhysicsDynamic.cc in Sources */,
|
||||
F5F49A2417E1A66500361F45 /* scriptbind_soundListener_component.cc in Sources */,
|
||||
F5F49A2517E1A66500361F45 /* scriptbind_soundlowpassfilter_component.cc in Sources */,
|
||||
F5F49A2717E1A66500361F45 /* scriptbind_soundreverbfilter_component.cc in Sources */,
|
||||
|
@ -6513,6 +6778,7 @@
|
|||
F5F49A4C17E1A66500361F45 /* SoundReverbFilterComponentSerialization.cc in Sources */,
|
||||
F5F49A4D17E1A66500361F45 /* SoundSourceComponent.cc in Sources */,
|
||||
F5F49A4E17E1A66500361F45 /* SoundSourceComponentSerialization.cc in Sources */,
|
||||
82D17E981937144F007B315E /* PhysicsStatic.cc in Sources */,
|
||||
F5F49A4F17E1A66500361F45 /* SoundFeature.cc in Sources */,
|
||||
F5F49A5017E1A66500361F45 /* SoundRes.cc in Sources */,
|
||||
F5F49A5717E1A66500361F45 /* stdneb.cc in Sources */,
|
||||
|
@ -6534,6 +6800,7 @@
|
|||
F5F49A7017E1A66500361F45 /* osxsysfunc.mm in Sources */,
|
||||
F5F49A7117E1A66500361F45 /* refcounted.cc in Sources */,
|
||||
F5F49A7217E1A66500361F45 /* refcountedlist.cc in Sources */,
|
||||
255433DD192D909700DD4AA4 /* simplecamera.cc in Sources */,
|
||||
F5F49A7317E1A66500361F45 /* rtti.cc in Sources */,
|
||||
F5F49A7417E1A66500361F45 /* win32sysfunc.cc in Sources */,
|
||||
F5F49A7517E1A66500361F45 /* debugcounter.cc in Sources */,
|
||||
|
@ -6562,6 +6829,7 @@
|
|||
F5F49A8C17E1A66500361F45 /* httprequestreader.cc in Sources */,
|
||||
F5F49A8D17E1A66500361F45 /* httprequestwriter.cc in Sources */,
|
||||
F5F49A8E17E1A66500361F45 /* httpresponsereader.cc in Sources */,
|
||||
5850EF211935F045008B3597 /* guiscene.cc in Sources */,
|
||||
F5F49A8F17E1A66500361F45 /* httpresponsewriter.cc in Sources */,
|
||||
F5F49A9017E1A66500361F45 /* httpserver.cc in Sources */,
|
||||
F5F49A9117E1A66500361F45 /* httpserverproxy.cc in Sources */,
|
||||
|
@ -6573,6 +6841,7 @@
|
|||
F5F49A9717E1A66500361F45 /* interfacehandlerbase.cc in Sources */,
|
||||
F5F49A9817E1A66500361F45 /* androidarchive.cc in Sources */,
|
||||
F5F49A9917E1A66500361F45 /* androidarchivefilesystem.cc in Sources */,
|
||||
82D17E931937144F007B315E /* PhysicsPlaneShape.cc in Sources */,
|
||||
F5F49A9A17E1A66500361F45 /* androidconsolehandler.cc in Sources */,
|
||||
F5F49A9B17E1A66500361F45 /* androidfswrapper.cc in Sources */,
|
||||
F5F49A9C17E1A66500361F45 /* archive.cc in Sources */,
|
||||
|
@ -6589,6 +6858,7 @@
|
|||
F5F49AA617E1A66500361F45 /* consolehandler.cc in Sources */,
|
||||
F5F49AA717E1A66500361F45 /* consolepagehandler.cc in Sources */,
|
||||
F5F49AA817E1A66500361F45 /* iopagehandler.cc in Sources */,
|
||||
82D17E8D1937144F007B315E /* PhysicsCapsuleShape.cc in Sources */,
|
||||
F5F49AA917E1A66500361F45 /* excelxmlreader.cc in Sources */,
|
||||
F5F49AAA17E1A66500361F45 /* fileservicesystem.cc in Sources */,
|
||||
F5F49AAB17E1A66500361F45 /* filestream.cc in Sources */,
|
||||
|
@ -6618,6 +6888,7 @@
|
|||
F5F49AC317E1A66500361F45 /* win360fswrapper.cc in Sources */,
|
||||
F5F49AC417E1A66500361F45 /* xmlreader.cc in Sources */,
|
||||
F5F49AC517E1A66500361F45 /* xmlwriter.cc in Sources */,
|
||||
5850EF201935F045008B3597 /* guirenderobject.cc in Sources */,
|
||||
F5F49AC617E1A66500361F45 /* ziparchive.cc in Sources */,
|
||||
F5F49AC717E1A66500361F45 /* zipdirentry.cc in Sources */,
|
||||
F5F49AC817E1A66500361F45 /* zipfileentry.cc in Sources */,
|
||||
|
@ -6659,11 +6930,13 @@
|
|||
F5F49AF317E1A66500361F45 /* osxmemorypool.cc in Sources */,
|
||||
F5F49AF417E1A66500361F45 /* poolarrayallocator.cc in Sources */,
|
||||
F5F49AF917E1A66500361F45 /* boxbuilder.cc in Sources */,
|
||||
82D17E6819371431007B315E /* PhysicsBodyComponent.cc in Sources */,
|
||||
F5F49AFA17E1A66500361F45 /* conebuilder.cc in Sources */,
|
||||
F5F49AFB17E1A66500361F45 /* meshbuilder.cc in Sources */,
|
||||
F5F49AFC17E1A66500361F45 /* parallelogrambuilder.cc in Sources */,
|
||||
82C7DF6E192222D2002CE939 /* PackageSystem.cc in Sources */,
|
||||
F5F49AFD17E1A66500361F45 /* asyncport.cc in Sources */,
|
||||
82D17E911937144F007B315E /* PhysicsMaterial.cc in Sources */,
|
||||
F5F49AFE17E1A66500361F45 /* asynhandlerthread.cc in Sources */,
|
||||
F5F49AFF17E1A66500361F45 /* batchmessage.cc in Sources */,
|
||||
F5F49B0017E1A66500361F45 /* blockinghandlerthread.cc in Sources */,
|
||||
|
@ -6745,6 +7018,7 @@
|
|||
F5F49B4E17E1A66500361F45 /* RenderToTexture.cc in Sources */,
|
||||
F5F49B4F17E1A66500361F45 /* StreamBufferPool.cc in Sources */,
|
||||
F5F49B5017E1A66500361F45 /* Camera.cc in Sources */,
|
||||
82D17E901937144F007B315E /* PhysicsEntity.cc in Sources */,
|
||||
F5F49B5117E1A66500361F45 /* CameraSetting.cc in Sources */,
|
||||
F5F49B5217E1A66500361F45 /* ActiveLight.cc in Sources */,
|
||||
F5F49B5317E1A66500361F45 /* DeferredLightingPass.cc in Sources */,
|
||||
|
@ -6872,6 +7146,7 @@
|
|||
F55211AA1856FC71003AC44B /* GenesisShaderParser.cc in Sources */,
|
||||
F55211AB1856FC71003AC44B /* stdneb.cc in Sources */,
|
||||
F55211AF1856FC9C003AC44B /* particleLimitAffector.cc in Sources */,
|
||||
82D17E6A19371431007B315E /* PhysicsFeature.cc in Sources */,
|
||||
F55211B01856FC9C003AC44B /* particleLimitAffectorSerialization.cc in Sources */,
|
||||
F55211BA1856FD1A003AC44B /* DXTextureDecompress.cc in Sources */,
|
||||
F55211BB1856FD1A003AC44B /* FloatsCompression.cc in Sources */,
|
||||
|
@ -6890,6 +7165,7 @@
|
|||
F55211D81856FDEF003AC44B /* RenderWindow.cc in Sources */,
|
||||
F55211F118580147003AC44B /* MyGUI_GenesisDataManager.cpp in Sources */,
|
||||
F55211F218580147003AC44B /* MyGUI_GenesisDataStream.cpp in Sources */,
|
||||
82D17E921937144F007B315E /* PhysicsMeshShape.cc in Sources */,
|
||||
F55211F318580147003AC44B /* MyGUI_GenesisInput.cpp in Sources */,
|
||||
F55211F418580147003AC44B /* MyGUI_GenesisRenderManager.cpp in Sources */,
|
||||
F55211F518580147003AC44B /* MyGUI_GenesisRTTexture.cpp in Sources */,
|
||||
|
@ -6919,6 +7195,12 @@
|
|||
F5C42B4E18B1E3A400F5144E /* ShaderJoint.cc in Sources */,
|
||||
F5C42B4F18B1E3A400F5144E /* ShaderCompilerUtil.cc in Sources */,
|
||||
F504B89B18BC39F800B7C723 /* SoundInterface.cc in Sources */,
|
||||
82F91395193748BD00BB1943 /* scriptbind_physicsbody_component.cc in Sources */,
|
||||
82F91396193748BD00BB1943 /* scriptbind_physicsboxshape.cc in Sources */,
|
||||
82F91397193748BD00BB1943 /* scriptbind_physicscapsuleshape.cc in Sources */,
|
||||
82F91398193748BD00BB1943 /* scriptbind_physicsmeshshape.cc in Sources */,
|
||||
82F91399193748BD00BB1943 /* scriptbind_physicsscene.cc in Sources */,
|
||||
82F9139A193748BD00BB1943 /* scriptbind_physicssphereshape.cc in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -7036,6 +7318,8 @@
|
|||
__OSX__,
|
||||
MYGUI_RTTI_DISABLE_TYPE_INFO,
|
||||
__USE_AUDIO__,
|
||||
NDEBUG,
|
||||
__arm__,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../rendersystem,
|
||||
|
@ -7053,6 +7337,22 @@
|
|||
../../../genesis_externals/Externals/,
|
||||
../extlibs/ShaderUtil,
|
||||
../depends,
|
||||
../ExtIncludes/physX3/ios,
|
||||
../ExtIncludes/physX3/ios/cooking,
|
||||
../ExtIncludes/physX3/ios/geometry,
|
||||
../ExtIncludes/physX3/ios/extensions,
|
||||
../ExtIncludes/physX3/ios/cloth,
|
||||
../ExtIncludes/physX3/ios/characterkinematic,
|
||||
../ExtIncludes/physX3/ios/common,
|
||||
../ExtIncludes/physX3/ios/particles,
|
||||
../ExtIncludes/physX3/ios/vehicle,
|
||||
../ExtIncludes/physX3/ios/RepXUpgrader,
|
||||
../ExtIncludes/physX3/ios/RepX,
|
||||
../ExtIncludes/physX3/ios/pxtask,
|
||||
../ExtIncludes/physX3/ios/pvd,
|
||||
../ExtIncludes/physX3/ios/physxvisualdebuggersdk,
|
||||
../ExtIncludes/physX3/ios/physxprofilesdk,
|
||||
../ExtIncludes/physX3/ios/foundation,
|
||||
);
|
||||
OTHER_LDFLAGS = "-ObjC";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -7075,6 +7375,8 @@
|
|||
__OSX__,
|
||||
MYGUI_RTTI_DISABLE_TYPE_INFO,
|
||||
__USE_AUDIO__,
|
||||
NDEBUG,
|
||||
__arm__,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
../rendersystem,
|
||||
|
@ -7092,6 +7394,22 @@
|
|||
../../../genesis_externals/Externals/,
|
||||
../extlibs/ShaderUtil,
|
||||
../depends,
|
||||
../ExtIncludes/physX3/ios,
|
||||
../ExtIncludes/physX3/ios/cooking,
|
||||
../ExtIncludes/physX3/ios/geometry,
|
||||
../ExtIncludes/physX3/ios/extensions,
|
||||
../ExtIncludes/physX3/ios/cloth,
|
||||
../ExtIncludes/physX3/ios/characterkinematic,
|
||||
../ExtIncludes/physX3/ios/common,
|
||||
../ExtIncludes/physX3/ios/particles,
|
||||
../ExtIncludes/physX3/ios/vehicle,
|
||||
../ExtIncludes/physX3/ios/RepXUpgrader,
|
||||
../ExtIncludes/physX3/ios/RepX,
|
||||
../ExtIncludes/physX3/ios/pxtask,
|
||||
../ExtIncludes/physX3/ios/pvd,
|
||||
../ExtIncludes/physX3/ios/physxvisualdebuggersdk,
|
||||
../ExtIncludes/physX3/ios/physxprofilesdk,
|
||||
../ExtIncludes/physX3/ios/foundation,
|
||||
);
|
||||
OTHER_LDFLAGS = "-ObjC";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
|
|
@ -10,5 +10,5 @@
|
|||
//#define __PROJECTOR_COMMIT__
|
||||
#define __APP_BUILD_COMMIT__
|
||||
//#define __SOUND_COMMIT__
|
||||
#define __PHYSX_COMMIT__
|
||||
//#define __USE_PHYSX__
|
||||
//#define __SCRIPT_COMMIT__
|
|
@ -498,7 +498,8 @@ bool GenesisLoader::Init( int argc, char *argv[] )
|
|||
|
||||
for (;;)
|
||||
{
|
||||
if(!IsWindowEnabled(this->mh_PluginWnd))break;
|
||||
if(!IsWindowEnabled(this->mh_PluginWnd))
|
||||
break;
|
||||
|
||||
if (PeekMessage(&msg,NULL,0,0,PM_REMOVE))
|
||||
{
|
||||
|
|
|
@ -26,6 +26,7 @@ THE SOFTWARE.
|
|||
#include "input/input_stdneb.h"
|
||||
#include "input/android/androidinputserver.h"
|
||||
#include "input/inputtouchscreen.h"
|
||||
#include "input/inputkeyboard.h"
|
||||
|
||||
namespace AndroidInput
|
||||
{
|
||||
|
@ -54,6 +55,9 @@ namespace AndroidInput
|
|||
// create a default keyboard and mouse handler
|
||||
this->defaultTouchScreen = InputTouchScreen::Create();
|
||||
this->AttachInputHandler(InputPriority::Game, this->defaultTouchScreen.upcast<InputHandler>());
|
||||
|
||||
this->defaultKeyboard = InputKeyboard::Create();
|
||||
this->AttachInputHandler(InputPriority::Game, this->defaultKeyboard.upcast<InputHandler>());
|
||||
}
|
||||
|
||||
void AndroidInputServer::Close()
|
||||
|
|
|
@ -406,5 +406,33 @@ InputKey::KeyCodesByGroup(InputKey::Group group)
|
|||
return keys;
|
||||
}
|
||||
|
||||
#ifdef __ANDROID__
|
||||
InputKey::Code InputKey::TranslateAndoridToWin32( InputKey::AndroidKeyCode androidCode )
|
||||
{
|
||||
switch (androidCode)
|
||||
{
|
||||
case KEYCODE_HOME : return Home;
|
||||
case KEYCODE_BACK : return Back;
|
||||
case KEYCODE_ENTER : return Return;
|
||||
case KEYCODE_MENU : return Menu;
|
||||
|
||||
case KEYCODE_DPAD_UP : return Up;
|
||||
case KEYCODE_DPAD_DOWN : return Down;
|
||||
case KEYCODE_DPAD_LEFT : return Left;
|
||||
case KEYCODE_DPAD_RIGHT : return Right;
|
||||
case KEYCODE_DPAD_CENTER : return Return;
|
||||
|
||||
case KEYCODE_VOLUME_UP : return VolumeUp;
|
||||
case KEYCODE_VOLUME_DOWN : return VolumeDown;
|
||||
case KEYCODE_MUTE : return VolumeMute;
|
||||
case KEYCODE_VOLUME_MUTE : return VolumeMute;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
n_error("Invalid or Unsupported key code!");
|
||||
return InvalidKey;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
} // namespace Input
|
|
@ -194,6 +194,231 @@ public:
|
|||
InvalidKey,
|
||||
};
|
||||
|
||||
#ifdef __ANDROID__
|
||||
///Android key codes
|
||||
enum AndroidKeyCode
|
||||
{
|
||||
KEYCODE_UNKNOWN = 0,
|
||||
KEYCODE_SOFT_LEFT = 1,
|
||||
KEYCODE_SOFT_RIGHT = 2,
|
||||
KEYCODE_HOME = 3,
|
||||
KEYCODE_BACK = 4,
|
||||
KEYCODE_CALL = 5,
|
||||
KEYCODE_ENDCALL = 6,
|
||||
KEYCODE_0 = 7,
|
||||
KEYCODE_1 = 8,
|
||||
KEYCODE_2 = 9,
|
||||
KEYCODE_3 = 10,
|
||||
KEYCODE_4 = 11,
|
||||
KEYCODE_5 = 12,
|
||||
KEYCODE_6 = 13,
|
||||
KEYCODE_7 = 14,
|
||||
KEYCODE_8 = 15,
|
||||
KEYCODE_9 = 16,
|
||||
KEYCODE_STAR = 17,
|
||||
KEYCODE_POUND = 18,
|
||||
KEYCODE_DPAD_UP = 19,
|
||||
KEYCODE_DPAD_DOWN = 20,
|
||||
KEYCODE_DPAD_LEFT = 21,
|
||||
KEYCODE_DPAD_RIGHT = 22,
|
||||
KEYCODE_DPAD_CENTER = 23,
|
||||
KEYCODE_VOLUME_UP = 24,
|
||||
KEYCODE_VOLUME_DOWN = 25,
|
||||
KEYCODE_POWER = 26,
|
||||
KEYCODE_CAMERA = 27,
|
||||
KEYCODE_CLEAR = 28,
|
||||
|
||||
KEYCODE_A = 29,
|
||||
KEYCODE_B = 30,
|
||||
KEYCODE_C = 31,
|
||||
KEYCODE_D = 32,
|
||||
KEYCODE_E = 33,
|
||||
KEYCODE_F = 34,
|
||||
KEYCODE_G = 35,
|
||||
KEYCODE_H = 36,
|
||||
KEYCODE_I = 37,
|
||||
KEYCODE_J = 38,
|
||||
KEYCODE_K = 39,
|
||||
KEYCODE_L = 40,
|
||||
KEYCODE_M = 41,
|
||||
KEYCODE_N = 42,
|
||||
KEYCODE_O = 43,
|
||||
KEYCODE_P = 44,
|
||||
KEYCODE_Q = 45,
|
||||
KEYCODE_R = 46,
|
||||
KEYCODE_S = 47,
|
||||
KEYCODE_T = 48,
|
||||
KEYCODE_U = 49,
|
||||
KEYCODE_V = 50,
|
||||
KEYCODE_W = 51,
|
||||
KEYCODE_X = 52,
|
||||
KEYCODE_Y = 53,
|
||||
KEYCODE_Z = 54,
|
||||
|
||||
KEYCODE_COMMA = 55,
|
||||
KEYCODE_PERIOD = 56,
|
||||
KEYCODE_ALT_LEFT = 57,
|
||||
KEYCODE_ALT_RIGHT = 58,
|
||||
KEYCODE_SHIFT_LEFT = 59,
|
||||
KEYCODE_SHIFT_RIGHT = 60,
|
||||
KEYCODE_TAB = 61,
|
||||
KEYCODE_SPACE = 62,
|
||||
KEYCODE_SYM = 63,
|
||||
KEYCODE_EXPLORER = 64,
|
||||
KEYCODE_ENVELOPE = 65,
|
||||
KEYCODE_ENTER = 66,
|
||||
KEYCODE_DEL = 67,
|
||||
KEYCODE_GRAVE = 68,
|
||||
KEYCODE_MINUS = 69,
|
||||
KEYCODE_EQUALS = 70,
|
||||
KEYCODE_LEFT_BRACKET = 71,
|
||||
KEYCODE_RIGHT_BRACKET = 72,
|
||||
KEYCODE_BACKSLASH = 73,
|
||||
KEYCODE_SEMICOLON = 74,
|
||||
KEYCODE_APOSTROPHE = 75,
|
||||
KEYCODE_SLASH = 76,
|
||||
KEYCODE_AT = 77,
|
||||
KEYCODE_NUM = 78,
|
||||
KEYCODE_HEADSETHOOK = 79,
|
||||
KEYCODE_FOCUS = 80,
|
||||
KEYCODE_PLUS = 81,
|
||||
KEYCODE_MENU = 82,
|
||||
KEYCODE_NOTIFICATION = 83,
|
||||
KEYCODE_SEARCH = 84,
|
||||
KEYCODE_MEDIA_PLAY_PAUSE= 85,
|
||||
KEYCODE_MEDIA_STOP = 86,
|
||||
KEYCODE_MEDIA_NEXT = 87,
|
||||
KEYCODE_MEDIA_PREVIOUS = 88,
|
||||
KEYCODE_MEDIA_REWIND = 89,
|
||||
KEYCODE_MEDIA_FAST_FORWARD = 90,
|
||||
KEYCODE_MUTE = 91,
|
||||
KEYCODE_PAGE_UP = 92,
|
||||
KEYCODE_PAGE_DOWN = 93,
|
||||
KEYCODE_PICTSYMBOLS = 94,
|
||||
KEYCODE_SWITCH_CHARSET = 95,
|
||||
|
||||
KEYCODE_BUTTON_A = 96,
|
||||
KEYCODE_BUTTON_B = 97,
|
||||
KEYCODE_BUTTON_C = 98,
|
||||
KEYCODE_BUTTON_X = 99,
|
||||
KEYCODE_BUTTON_Y = 100,
|
||||
KEYCODE_BUTTON_Z = 101,
|
||||
KEYCODE_BUTTON_L1 = 102,
|
||||
KEYCODE_BUTTON_R1 = 103,
|
||||
KEYCODE_BUTTON_L2 = 104,
|
||||
KEYCODE_BUTTON_R2 = 105,
|
||||
KEYCODE_BUTTON_THUMBL = 106,
|
||||
KEYCODE_BUTTON_THUMBR = 107,
|
||||
KEYCODE_BUTTON_START = 108,
|
||||
KEYCODE_BUTTON_SELECT = 109,
|
||||
KEYCODE_BUTTON_MODE = 110,
|
||||
|
||||
KEYCODE_ESCAPE = 111,
|
||||
KEYCODE_FORWARD_DEL = 112,
|
||||
KEYCODE_CTRL_LEFT = 113,
|
||||
KEYCODE_CTRL_RIGHT = 114,
|
||||
KEYCODE_CAPS_LOCK = 115,
|
||||
KEYCODE_SCROLL_LOCK = 116,
|
||||
KEYCODE_META_LEFT = 117,
|
||||
KEYCODE_META_RIGHT = 118,
|
||||
KEYCODE_FUNCTION = 119,
|
||||
KEYCODE_SYSRQ = 120,
|
||||
KEYCODE_BREAK = 121,
|
||||
KEYCODE_MOVE_HOME = 122,
|
||||
KEYCODE_MOVE_END = 123,
|
||||
KEYCODE_INSERT = 124,
|
||||
KEYCODE_FORWARD = 125,
|
||||
KEYCODE_MEDIA_PLAY = 126,
|
||||
KEYCODE_MEDIA_PAUSE = 127,
|
||||
KEYCODE_MEDIA_CLOSE = 128,
|
||||
KEYCODE_MEDIA_EJECT = 129,
|
||||
KEYCODE_MEDIA_RECORD = 130,
|
||||
|
||||
KEYCODE_F1 = 131,
|
||||
KEYCODE_F2 = 132,
|
||||
KEYCODE_F3 = 133,
|
||||
KEYCODE_F4 = 134,
|
||||
KEYCODE_F5 = 135,
|
||||
KEYCODE_F6 = 136,
|
||||
KEYCODE_F7 = 137,
|
||||
KEYCODE_F8 = 138,
|
||||
KEYCODE_F9 = 139,
|
||||
KEYCODE_F10 = 140,
|
||||
KEYCODE_F11 = 141,
|
||||
KEYCODE_F12 = 142,
|
||||
|
||||
KEYCODE_NUM_LOCK = 143,
|
||||
KEYCODE_NUMPAD_0 = 144,
|
||||
KEYCODE_NUMPAD_1 = 145,
|
||||
KEYCODE_NUMPAD_2 = 146,
|
||||
KEYCODE_NUMPAD_3 = 147,
|
||||
KEYCODE_NUMPAD_4 = 148,
|
||||
KEYCODE_NUMPAD_5 = 149,
|
||||
KEYCODE_NUMPAD_6 = 150,
|
||||
KEYCODE_NUMPAD_7 = 151,
|
||||
KEYCODE_NUMPAD_8 = 152,
|
||||
KEYCODE_NUMPAD_9 = 153,
|
||||
|
||||
KEYCODE_NUMPAD_DIVIDE = 154,
|
||||
KEYCODE_NUMPAD_MULTIPLY = 155,
|
||||
KEYCODE_NUMPAD_SUBTRACT = 156,
|
||||
KEYCODE_NUMPAD_ADD = 157,
|
||||
KEYCODE_NUMPAD_DOT = 158,
|
||||
KEYCODE_NUMPAD_COMMA = 159,
|
||||
KEYCODE_NUMPAD_ENTER = 160,
|
||||
KEYCODE_NUMPAD_EQUALS = 161,
|
||||
KEYCODE_NUMPAD_LEFT_PAREN = 162,
|
||||
KEYCODE_NUMPAD_RIGHT_PAREN = 163,
|
||||
KEYCODE_VOLUME_MUTE = 164,
|
||||
KEYCODE_INFO = 165,
|
||||
KEYCODE_CHANNEL_UP = 166,
|
||||
KEYCODE_CHANNEL_DOWN = 167,
|
||||
KEYCODE_ZOOM_IN = 168,
|
||||
KEYCODE_ZOOM_OUT = 169,
|
||||
KEYCODE_TV = 170,
|
||||
KEYCODE_WINDOW = 171,
|
||||
KEYCODE_GUIDE = 172,
|
||||
KEYCODE_DVR = 173,
|
||||
KEYCODE_BOOKMARK = 174,
|
||||
KEYCODE_CAPTIONS = 175,
|
||||
KEYCODE_SETTINGS = 176,
|
||||
KEYCODE_TV_POWER = 177,
|
||||
KEYCODE_TV_INPUT = 178,
|
||||
KEYCODE_STB_POWER = 179,
|
||||
KEYCODE_STB_INPUT = 180,
|
||||
KEYCODE_AVR_POWER = 181,
|
||||
KEYCODE_AVR_INPUT = 182,
|
||||
KEYCODE_PROG_RED = 183,
|
||||
KEYCODE_PROG_GREEN = 184,
|
||||
KEYCODE_PROG_YELLOW = 185,
|
||||
KEYCODE_PROG_BLUE = 186,
|
||||
KEYCODE_APP_SWITCH = 187,
|
||||
KEYCODE_BUTTON_1 = 188,
|
||||
KEYCODE_BUTTON_2 = 189,
|
||||
KEYCODE_BUTTON_3 = 190,
|
||||
KEYCODE_BUTTON_4 = 191,
|
||||
KEYCODE_BUTTON_5 = 192,
|
||||
KEYCODE_BUTTON_6 = 193,
|
||||
KEYCODE_BUTTON_7 = 194,
|
||||
KEYCODE_BUTTON_8 = 195,
|
||||
KEYCODE_BUTTON_9 = 196,
|
||||
KEYCODE_BUTTON_10 = 197,
|
||||
KEYCODE_BUTTON_11 = 198,
|
||||
KEYCODE_BUTTON_12 = 199,
|
||||
KEYCODE_BUTTON_13 = 200,
|
||||
KEYCODE_BUTTON_14 = 201,
|
||||
KEYCODE_BUTTON_15 = 202,
|
||||
KEYCODE_BUTTON_16 = 203,
|
||||
KEYCODE_LANGUAGE_SWITCH = 204,
|
||||
KEYCODE_MANNER_MODE = 205,
|
||||
KEYCODE_3D_MODE = 206,
|
||||
KEYCODE_CONTACTS = 207,
|
||||
KEYCODE_CALENDAR = 208,
|
||||
KEYCODE_MUSIC = 209,
|
||||
KEYCODE_CALCULATOR = 210,
|
||||
};
|
||||
#endif
|
||||
|
||||
/// key group
|
||||
enum Group
|
||||
{
|
||||
|
@ -211,6 +436,12 @@ public:
|
|||
static Code FromString(const Util::String& str);
|
||||
/// get key codes by group
|
||||
static Util::Array<InputKey::Code> KeyCodesByGroup(InputKey::Group group);
|
||||
|
||||
#ifdef __ANDROID__
|
||||
/// Translate Android key code to win32
|
||||
static Code TranslateAndoridToWin32(AndroidKeyCode androidCode);
|
||||
#endif
|
||||
|
||||
private:
|
||||
static Util::Dictionary<Util::String,Code> dict;
|
||||
};
|
||||
|
|
|
@ -23,8 +23,8 @@ THE SOFTWARE.
|
|||
****************************************************************************/
|
||||
#if WIN32
|
||||
|
||||
|
||||
#include "input/input_stdneb.h"
|
||||
#include "graphicsystem/GraphicSystem.h"
|
||||
#include "input/win32/win32inputwebwindowsource.h"
|
||||
#include "input/inputserver.h"
|
||||
|
||||
|
@ -97,6 +97,7 @@ namespace Win32Input
|
|||
//------------------------------------------------------------------------
|
||||
Win32InputWebWindowSource::Win32InputWebWindowSource()
|
||||
:mWnd(0)
|
||||
,mLockWinodwsSize(true)
|
||||
{
|
||||
mMousePostion.set(0.0, 0.0);
|
||||
}
|
||||
|
@ -158,7 +159,23 @@ namespace Win32Input
|
|||
inputEvent.SetType(InputEvent::AppObtainFocus);
|
||||
mInputEventList.Append(inputEvent);
|
||||
//XInputEnable(true);
|
||||
ReleaseCapture();
|
||||
if (mLockWinodwsSize)
|
||||
{
|
||||
ReleaseCapture();
|
||||
}
|
||||
else
|
||||
{
|
||||
int nWidth = LOWORD(lParam); // width of client area
|
||||
int nHeight = HIWORD(lParam); // height of client area
|
||||
if(Graphic::GraphicSystem::HasInstance())
|
||||
{
|
||||
Graphic::ViewPortWindow* window = Graphic::GraphicSystem::Instance()->GetMainViewPortWindow();
|
||||
if (window)
|
||||
{
|
||||
window->ChangeSize(nWidth, nHeight);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// manually change window size in child mode
|
||||
|
|
|
@ -89,6 +89,11 @@ namespace Win32Input
|
|||
/// compute normalized mouse position from absolute mouse pos
|
||||
Math::float2 ComputeNormMousePos(const Math::float2& absMousePos) const;
|
||||
|
||||
|
||||
void SetLockWindowSize(bool value);
|
||||
|
||||
bool GetLockWindowSize() const;
|
||||
|
||||
/// translate a Windows virtual key code into a Nebula3 key code
|
||||
Input::InputKey::Code TranslateKeyCode(WPARAM wParam) const;
|
||||
|
||||
|
@ -112,22 +117,29 @@ namespace Win32Input
|
|||
Math::float2 mMousePostion;
|
||||
|
||||
HWND mWnd;
|
||||
bool mLockWinodwsSize;
|
||||
};
|
||||
//------------------------------------------------------------------------
|
||||
inline
|
||||
void
|
||||
Win32InputWebWindowSource::SetWnd( HWND hWnd )
|
||||
inline void Win32InputWebWindowSource::SetWnd( HWND hWnd )
|
||||
{
|
||||
mWnd = hWnd;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
inline
|
||||
HWND
|
||||
Win32InputWebWindowSource::GetWnd(void) const
|
||||
inline HWND Win32InputWebWindowSource::GetWnd(void) const
|
||||
{
|
||||
return mWnd;
|
||||
}
|
||||
|
||||
inline void Win32InputWebWindowSource::SetLockWindowSize(bool value)
|
||||
{
|
||||
mLockWinodwsSize = value;
|
||||
}
|
||||
|
||||
inline bool Win32InputWebWindowSource::GetLockWindowSize() const
|
||||
{
|
||||
return mLockWinodwsSize;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -47,6 +47,17 @@ namespace MyGUI
|
|||
Bottom = MYGUI_FLAG(4), /**< value from the bottom (and center horizontally) */
|
||||
VStretch = Top | Bottom, /**< stretch vertically proportionate to parent window (and center horizontally) */
|
||||
|
||||
ProLeft = MYGUI_FLAG(5),
|
||||
ProRight = MYGUI_FLAG(6),
|
||||
ProHStretch = ProLeft | ProRight,
|
||||
|
||||
ProTop = MYGUI_FLAG(7),
|
||||
ProBottom = MYGUI_FLAG(8),
|
||||
ProVStretch = ProTop | ProBottom,
|
||||
|
||||
ProStretch = ProHStretch | ProVStretch,
|
||||
ProDefault = ProLeft | ProTop,
|
||||
|
||||
Stretch = HStretch | VStretch, /**< stretch proportionate to parent window */
|
||||
Default = Left | Top /**< default value (value from left and top) */
|
||||
};
|
||||
|
@ -58,17 +69,17 @@ namespace MyGUI
|
|||
|
||||
bool isHCenter() const
|
||||
{
|
||||
return HCenter == (value & ((int)HStretch));
|
||||
return HCenter == (value & ((int)HStretch)) && HCenter == (value & ((int)ProHStretch));
|
||||
}
|
||||
|
||||
bool isVCenter() const
|
||||
{
|
||||
return VCenter == (value & ((int)VStretch));
|
||||
return VCenter == (value & ((int)VStretch)) && VCenter == (value & ((int)ProVStretch));
|
||||
}
|
||||
|
||||
bool isCenter() const
|
||||
{
|
||||
return Center == (value & ((int)Stretch));
|
||||
return Center == (value & ((int)Stretch)) && Center == (value & ((int)ProStretch));
|
||||
}
|
||||
|
||||
bool isLeft() const
|
||||
|
@ -76,41 +87,81 @@ namespace MyGUI
|
|||
return Left == (value & ((int)HStretch));
|
||||
}
|
||||
|
||||
bool isProLeft() const
|
||||
{
|
||||
return ProLeft == (value & ((int)ProHStretch));
|
||||
}
|
||||
|
||||
bool isRight() const
|
||||
{
|
||||
return Right == (value & ((int)HStretch));
|
||||
}
|
||||
|
||||
bool isProRight() const
|
||||
{
|
||||
return ProRight == (value & ((int)ProHStretch));
|
||||
}
|
||||
|
||||
bool isHStretch() const
|
||||
{
|
||||
return HStretch == (value & ((int)HStretch));
|
||||
}
|
||||
|
||||
bool isProHStretch() const
|
||||
{
|
||||
return ProHStretch == (value & ((int)ProHStretch));
|
||||
}
|
||||
|
||||
bool isTop() const
|
||||
{
|
||||
return Top == (value & ((int)VStretch));
|
||||
}
|
||||
|
||||
bool isProTop() const
|
||||
{
|
||||
return ProTop == (value & ((int)ProVStretch));
|
||||
}
|
||||
|
||||
bool isBottom() const
|
||||
{
|
||||
return (Bottom == (value & ((int)VStretch)));
|
||||
}
|
||||
|
||||
bool isProBottom() const
|
||||
{
|
||||
return (ProBottom == (value & ((int)ProVStretch)));
|
||||
}
|
||||
|
||||
bool isVStretch() const
|
||||
{
|
||||
return (VStretch == (value & ((int)VStretch)));
|
||||
}
|
||||
|
||||
bool isProVStretch() const
|
||||
{
|
||||
return (ProVStretch == (value & ((int)ProVStretch)));
|
||||
}
|
||||
|
||||
bool isStretch() const
|
||||
{
|
||||
return (Stretch == (value & ((int)Stretch)));
|
||||
}
|
||||
|
||||
bool isProStretch() const
|
||||
{
|
||||
return (ProStretch == (value & ((int)ProStretch)));
|
||||
}
|
||||
|
||||
bool isDefault() const
|
||||
{
|
||||
return (Default == (value & ((int)Stretch)));
|
||||
}
|
||||
|
||||
bool isProDefault() const
|
||||
{
|
||||
return (ProDefault == (value & ((int)ProStretch)));
|
||||
}
|
||||
|
||||
Align& operator |= (Align const& _other)
|
||||
{
|
||||
value = Enum(int(value) | int(_other.value));
|
||||
|
@ -171,6 +222,18 @@ namespace MyGUI
|
|||
else
|
||||
result = "HCenter";
|
||||
|
||||
if (value & ProLeft)
|
||||
{
|
||||
if (value & ProRight)
|
||||
result = "ProHStretch";
|
||||
else
|
||||
result = "ProLeft";
|
||||
}
|
||||
else if (value & ProRight)
|
||||
result = "ProRight";
|
||||
else
|
||||
result = "HCenter";
|
||||
|
||||
if (value & Top)
|
||||
{
|
||||
if (value & Bottom)
|
||||
|
@ -183,6 +246,18 @@ namespace MyGUI
|
|||
else
|
||||
result += " VCenter";
|
||||
|
||||
if (value & ProTop)
|
||||
{
|
||||
if (value & ProBottom)
|
||||
result += " ProVStretch";
|
||||
else
|
||||
result += " ProTop";
|
||||
}
|
||||
else if (value & ProBottom)
|
||||
result += " ProBottom";
|
||||
else
|
||||
result += " VCenter";
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -244,6 +319,15 @@ namespace MyGUI
|
|||
map_names["ALIGN_STRETCH"] = Stretch;
|
||||
map_names["ALIGN_DEFAULT"] = Default;
|
||||
|
||||
map_names["ALIGN_PRO_LEFT"] = ProLeft;
|
||||
map_names["ALIGN_PRO_RIGHT"] = ProRight;
|
||||
map_names["ALIGN_PRO_HSTRETCH"] = ProHStretch;
|
||||
map_names["ALIGN_PRO_TOP"] = ProTop;
|
||||
map_names["ALIGN_PRO_BOTTOM"] = ProBottom;
|
||||
map_names["ALIGN_PRO_VSTRETCH"] = ProVStretch;
|
||||
map_names["ALIGN_PRO_STRETCH"] = ProStretch;
|
||||
map_names["ALIGN_PRO_DEFAULT"] = ProDefault;
|
||||
|
||||
MYGUI_REGISTER_VALUE(map_names, HCenter);
|
||||
MYGUI_REGISTER_VALUE(map_names, VCenter);
|
||||
MYGUI_REGISTER_VALUE(map_names, Center);
|
||||
|
@ -255,6 +339,15 @@ namespace MyGUI
|
|||
MYGUI_REGISTER_VALUE(map_names, VStretch);
|
||||
MYGUI_REGISTER_VALUE(map_names, Stretch);
|
||||
MYGUI_REGISTER_VALUE(map_names, Default);
|
||||
|
||||
MYGUI_REGISTER_VALUE(map_names, ProLeft);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProRight);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProHStretch);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProTop);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProBottom);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProVStretch);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProStretch);
|
||||
MYGUI_REGISTER_VALUE(map_names, ProDefault);
|
||||
}
|
||||
|
||||
return map_names;
|
||||
|
|
|
@ -54,6 +54,8 @@ namespace MyGUI
|
|||
// метод для отрисовки себя
|
||||
virtual void doRender();
|
||||
|
||||
virtual size_t getVertexCount() const;
|
||||
|
||||
void setCaption(const UString& _value);
|
||||
const UString& getCaption() const;
|
||||
|
||||
|
@ -69,8 +71,10 @@ namespace MyGUI
|
|||
virtual void setFontHeight(int _value);
|
||||
virtual int getFontHeight() const;
|
||||
|
||||
virtual void updateDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void createDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void destroyDrawItem();
|
||||
virtual void onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new);
|
||||
|
||||
virtual void setTextAlign(Align _value);
|
||||
virtual Align getTextAlign() const;
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
|
||||
namespace MyGUI
|
||||
{
|
||||
|
||||
class ISubWidget;
|
||||
class ILayer;
|
||||
class ILayerItem;
|
||||
class ILayerNode;
|
||||
|
@ -70,7 +70,9 @@ namespace MyGUI
|
|||
virtual void detachLayerItem(ILayerItem* _root) = 0;
|
||||
|
||||
// добавляет саб айтем и возвращает рендер айтем
|
||||
virtual RenderItem* addToRenderItem(ITexture* _texture, bool _firstQueue, bool _separate) = 0;
|
||||
virtual RenderItem* addToRenderItem(ISubWidget* _item, ITexture* _texture, bool _firstQueue, bool _separate) = 0;
|
||||
|
||||
virtual RenderItem* updateRenderItem(ISubWidget* _subWidget, RenderItem* _itemOld, ITexture* _texNew, bool _firstQueue, bool _separate) = 0;
|
||||
// необходимо обновление нода
|
||||
virtual void outOfDate(RenderItem* _item) = 0;
|
||||
|
||||
|
|
|
@ -28,6 +28,10 @@
|
|||
|
||||
namespace MyGUI
|
||||
{
|
||||
enum IMaterialType{
|
||||
NORMAL = 0,
|
||||
GRAY = 1 << 0,
|
||||
};
|
||||
|
||||
class ITexture;
|
||||
class IVertexBuffer;
|
||||
|
@ -41,7 +45,7 @@ namespace MyGUI
|
|||
virtual void begin() = 0;
|
||||
virtual void end() = 0;
|
||||
|
||||
virtual void doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count) = 0;
|
||||
virtual void doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count, int _material_type) = 0;
|
||||
|
||||
virtual const RenderTargetInfo& getInfo() = 0;
|
||||
};
|
||||
|
|
|
@ -46,8 +46,12 @@ namespace MyGUI
|
|||
ISubWidget() : mVisible(true) { }
|
||||
virtual ~ISubWidget() { }
|
||||
|
||||
virtual void updateDrawItem(ITexture* _texture, ILayerNode* _node) = 0;
|
||||
virtual void createDrawItem(ITexture* _texture, ILayerNode* _node) = 0;
|
||||
virtual void destroyDrawItem() = 0;
|
||||
virtual void onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new) = 0;
|
||||
|
||||
virtual size_t getVertexCount() const = 0;
|
||||
|
||||
virtual void setAlpha(float _alpha) { }
|
||||
|
||||
|
|
|
@ -35,10 +35,14 @@ namespace MyGUI
|
|||
MYGUI_RTTI_DERIVED( ISubWidgetRect )
|
||||
|
||||
public:
|
||||
ISubWidgetRect() : mGray(false) { }
|
||||
virtual ~ISubWidgetRect() { }
|
||||
|
||||
virtual void _setGray(bool _gray) { }
|
||||
virtual void _setUVSet(const FloatRect& _rect) { }
|
||||
virtual void _setColour(const Colour& _value) { }
|
||||
protected:
|
||||
bool mGray;
|
||||
};
|
||||
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -60,6 +60,7 @@ namespace MyGUI
|
|||
void restoreLayerItem();
|
||||
|
||||
protected:
|
||||
void updateTexture(ILayerNode* _node, ITexture* _texture);
|
||||
void attachToLayerItemNode(ILayerNode* _node, bool _deep);
|
||||
void detachFromLayerItemNode(bool _deep);
|
||||
|
||||
|
|
|
@ -66,7 +66,9 @@ namespace MyGUI
|
|||
virtual void detachLayerItem(ILayerItem* _item);
|
||||
|
||||
// добавляет саб айтем и возвращает рендер айтем
|
||||
virtual RenderItem* addToRenderItem(ITexture* _texture, bool _firstQueue, bool _manualRender);
|
||||
virtual RenderItem* addToRenderItem(ISubWidget* _subWidget, ITexture* _texture, bool _firstQueue, bool _separate);
|
||||
|
||||
virtual RenderItem* updateRenderItem(ISubWidget* _subWidget, RenderItem* _itemOld, ITexture* _texNew, bool _firstQueue, bool _separate);
|
||||
// необходимо обновление нода
|
||||
virtual void outOfDate(RenderItem* _item);
|
||||
|
||||
|
@ -82,6 +84,15 @@ namespace MyGUI
|
|||
|
||||
protected:
|
||||
void updateCompression();
|
||||
RenderItem* getRenderItem(ITexture* _texture, bool _firstQueue, bool _manualRender);
|
||||
|
||||
RenderItem* newRenderItem(ITexture* _texture, bool _manualRender);
|
||||
RenderItem* pushNewRenderItem(VectorRenderItem& _array, ITexture* _texture, bool _manualRender);
|
||||
|
||||
VectorRenderItem::iterator insertNewRenderItem(ITexture* _texture, bool _manualRender, const VectorDrawItem& _nodes,
|
||||
VectorRenderItem& _array, const VectorRenderItem::iterator& _where);
|
||||
|
||||
void notifyRenderItemChanged(const VectorDrawItem& _nodes, RenderItem* _old, RenderItem* _new);
|
||||
|
||||
protected:
|
||||
// список двух очередей отрисовки, для сабскинов и текста
|
||||
|
|
|
@ -39,6 +39,8 @@ namespace MyGUI
|
|||
PolygonalSkin();
|
||||
virtual ~PolygonalSkin();
|
||||
|
||||
virtual size_t getVertexCount() const;
|
||||
|
||||
/** Set line points. */
|
||||
void setPoints(const std::vector<FloatPoint>& _points);
|
||||
|
||||
|
@ -51,8 +53,10 @@ namespace MyGUI
|
|||
|
||||
virtual void setStateData(IStateInfo* _data);
|
||||
|
||||
virtual void updateDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void createDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void destroyDrawItem();
|
||||
virtual void onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new);
|
||||
|
||||
// метод для отрисовки себя
|
||||
virtual void doRender();
|
||||
|
@ -65,6 +69,7 @@ namespace MyGUI
|
|||
|
||||
virtual void _setUVSet(const FloatRect& _rect);
|
||||
virtual void _setColour(const Colour& _value);
|
||||
virtual void _setGray(bool _gray);
|
||||
|
||||
protected:
|
||||
void _rebuildGeometry();
|
||||
|
|
|
@ -37,7 +37,7 @@ namespace MyGUI
|
|||
class MYGUI_EXPORT RenderItem
|
||||
{
|
||||
public:
|
||||
RenderItem();
|
||||
RenderItem(ILayerNode* _owner);
|
||||
virtual ~RenderItem();
|
||||
|
||||
void renderToTarget(IRenderTarget* _target, bool _update);
|
||||
|
@ -49,12 +49,16 @@ namespace MyGUI
|
|||
bool getManualRender() const;
|
||||
|
||||
void addDrawItem(ISubWidget* _item, size_t _count);
|
||||
void insertDrawItem(size_t index, ISubWidget* _item, size_t _count);
|
||||
void removeDrawItem(ISubWidget* _item);
|
||||
void clearDrawItems();// expand by genesis-3d
|
||||
void reallockDrawItem(ISubWidget* _item, size_t _count);
|
||||
void breakDrawItems(ISubWidget* _break, VectorDrawItem& _fronts, VectorDrawItem& _tails); // expand by genesis-3d
|
||||
|
||||
void outOfDate();
|
||||
bool isOutOfDate() const;
|
||||
|
||||
size_t getDrawItemCount() const;
|
||||
size_t getNeedVertexCount() const;
|
||||
size_t getVertexCount() const;
|
||||
|
||||
|
@ -67,6 +71,12 @@ namespace MyGUI
|
|||
|
||||
bool getCompression();
|
||||
|
||||
|
||||
|
||||
void setMaterialType(IMaterialType _type);
|
||||
|
||||
|
||||
|
||||
private:
|
||||
#if MYGUI_DEBUG_MODE == 1
|
||||
std::string mTextureName;
|
||||
|
@ -89,10 +99,19 @@ namespace MyGUI
|
|||
IVertexBuffer* mVertexBuffer;
|
||||
IRenderTarget* mRenderTarget;
|
||||
|
||||
ILayerNode* mLayerNode; // expand by genesis-3d
|
||||
|
||||
bool mCompression;
|
||||
bool mManualRender;
|
||||
|
||||
int mMaterialType;
|
||||
};
|
||||
|
||||
inline size_t RenderItem::getDrawItemCount() const
|
||||
{
|
||||
return mDrawItems.size();
|
||||
}
|
||||
|
||||
} // namespace MyGUI
|
||||
|
||||
#endif // __MYGUI_RENDER_ITEM_H__
|
||||
|
|
|
@ -39,6 +39,8 @@ namespace MyGUI
|
|||
RotatingSkin();
|
||||
virtual ~RotatingSkin();
|
||||
|
||||
size_t getVertexCount() const;
|
||||
|
||||
/** Set angle of rotation in radians */
|
||||
void setAngle(float _angle);
|
||||
/** Get angle of rotation in radians */
|
||||
|
@ -57,8 +59,10 @@ namespace MyGUI
|
|||
|
||||
virtual void setStateData(IStateInfo* _data);
|
||||
|
||||
virtual void updateDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void createDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void destroyDrawItem();
|
||||
virtual void onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new);
|
||||
|
||||
// метод для отрисовки себя
|
||||
virtual void doRender();
|
||||
|
@ -71,6 +75,7 @@ namespace MyGUI
|
|||
|
||||
virtual void _setUVSet(const FloatRect& _rect);
|
||||
virtual void _setColour(const Colour& _value);
|
||||
virtual void _setGray(bool _gray);
|
||||
|
||||
protected:
|
||||
void _rebuildGeometry();
|
||||
|
|
|
@ -52,6 +52,7 @@ namespace MyGUI
|
|||
void _setSkinItemAlign(const IntSize& _size);
|
||||
void _setSkinItemVisible(bool _value);
|
||||
void _setSkinItemColour(const Colour& _value);
|
||||
void _setSkinItemGray(bool _value);
|
||||
void _setSkinItemAlpha(float _value);
|
||||
void _correctSkinItemView();
|
||||
void _updateSkinItemView();
|
||||
|
|
|
@ -44,14 +44,18 @@ namespace MyGUI
|
|||
SubSkin();
|
||||
virtual ~SubSkin();
|
||||
|
||||
virtual size_t getVertexCount() const;
|
||||
|
||||
virtual void setAlpha(float _alpha);
|
||||
|
||||
virtual void setVisible(bool _visible);
|
||||
|
||||
virtual void setStateData(IStateInfo* _data);
|
||||
|
||||
virtual void updateDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void createDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void destroyDrawItem();
|
||||
virtual void onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new);
|
||||
|
||||
// метод для отрисовки себя
|
||||
virtual void doRender();
|
||||
|
@ -64,6 +68,7 @@ namespace MyGUI
|
|||
|
||||
virtual void _setUVSet(const FloatRect& _rect);
|
||||
virtual void _setColour(const Colour& _value);
|
||||
virtual void _setGray(bool _gray);
|
||||
|
||||
protected:
|
||||
FloatRect mRectTexture;
|
||||
|
|
|
@ -43,12 +43,16 @@ namespace MyGUI
|
|||
TileRect();
|
||||
virtual ~TileRect();
|
||||
|
||||
virtual size_t getVertexCount() const;
|
||||
|
||||
virtual void setAlpha(float _alpha);
|
||||
|
||||
virtual void setVisible(bool _visible);
|
||||
|
||||
virtual void updateDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void createDrawItem(ITexture* _texture, ILayerNode* _node);
|
||||
virtual void destroyDrawItem();
|
||||
virtual void onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new);
|
||||
|
||||
// метод для отрисовки себя
|
||||
virtual void doRender();
|
||||
|
@ -63,6 +67,7 @@ namespace MyGUI
|
|||
|
||||
virtual void _setUVSet(const FloatRect& _rect);
|
||||
virtual void _setColour(const Colour& _value);
|
||||
virtual void _setGray(bool _gray);
|
||||
|
||||
protected:
|
||||
bool mEmptyView;
|
||||
|
|
|
@ -185,6 +185,8 @@ namespace MyGUI
|
|||
|
||||
void setColour(const Colour& _value);
|
||||
|
||||
void setGray(bool _gray);
|
||||
|
||||
// являемся ли мы рутовым виджетом
|
||||
/** Is this widget is root widget (root == without parents) */
|
||||
bool isRootWidget() const;
|
||||
|
@ -409,6 +411,8 @@ namespace MyGUI
|
|||
|
||||
Align mAlign;
|
||||
bool mVisible;
|
||||
|
||||
FloatCoord mFloatCoord;
|
||||
};
|
||||
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -303,13 +303,17 @@ namespace MyGUI
|
|||
// если есть текстура, то приаттачиваемся
|
||||
if (nullptr != mTexture && nullptr != mNode)
|
||||
{
|
||||
mRenderItem = mNode->addToRenderItem(mTexture, false, false);
|
||||
mRenderItem->addDrawItem(this, mCountVertex);
|
||||
mRenderItem = mNode->addToRenderItem(this, mTexture, false, false);
|
||||
}
|
||||
|
||||
if (nullptr != mNode) mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
size_t EditText::getVertexCount() const
|
||||
{
|
||||
return mCountVertex;
|
||||
}
|
||||
|
||||
const std::string& EditText::getFontName() const
|
||||
{
|
||||
return mFont->getResourceName();
|
||||
|
@ -337,8 +341,20 @@ namespace MyGUI
|
|||
{
|
||||
MYGUI_ASSERT(!mRenderItem, "mRenderItem must be nullptr");
|
||||
|
||||
mRenderItem = mNode->addToRenderItem(mTexture, false, false);
|
||||
mRenderItem->addDrawItem(this, mCountVertex);
|
||||
mRenderItem = mNode->addToRenderItem(this, mTexture, false, false);
|
||||
//mRenderItem->addDrawItem(this, mCountVertex);
|
||||
}
|
||||
}
|
||||
|
||||
void EditText::updateDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
mNode = _node;
|
||||
if (nullptr != mTexture)
|
||||
{
|
||||
MYGUI_ASSERT(mRenderItem, "mRenderItem must not be nullptr");
|
||||
|
||||
mRenderItem = mNode->updateRenderItem(this, mRenderItem, mTexture, false, false);
|
||||
//mRenderItem->addDrawItem(this, mCountVertex);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -352,6 +368,14 @@ namespace MyGUI
|
|||
mNode = nullptr;
|
||||
}
|
||||
|
||||
void EditText::onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new)
|
||||
{
|
||||
if (mNode == _sender && nullptr != mTexture)
|
||||
{
|
||||
mRenderItem = _new;
|
||||
}
|
||||
}
|
||||
|
||||
size_t EditText::getTextSelectionStart() const
|
||||
{
|
||||
return mStartSelect;
|
||||
|
@ -648,6 +672,8 @@ namespace MyGUI
|
|||
|
||||
// колличество реально отрисованных вершин
|
||||
mRenderItem->setLastVertexCount(vertexCount);
|
||||
|
||||
mRenderItem->setMaterialType(MyGUI::NORMAL);
|
||||
}
|
||||
|
||||
void EditText::setInvertSelected(bool _value)
|
||||
|
|
|
@ -89,9 +89,11 @@ namespace MyGUI
|
|||
if (mLayerNode)
|
||||
{
|
||||
ILayerNode* node = mLayerNode;
|
||||
// позже сделать детач без текста
|
||||
detachFromLayerItemNode(false);
|
||||
attachToLayerItemNode(node, false);
|
||||
//// позже сделать детач без текста
|
||||
//detachFromLayerItemNode(false);
|
||||
//attachToLayerItemNode(node, false);
|
||||
|
||||
updateTexture(node, _texture);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -145,6 +147,14 @@ namespace MyGUI
|
|||
if (mLayerNode) mLayerNode->getLayer()->upChildItemNode(mLayerNode);
|
||||
}
|
||||
|
||||
void LayerItem::updateTexture(ILayerNode* _node, ITexture* _texture)
|
||||
{
|
||||
for (VectorSubWidget::iterator skin = mDrawItems.begin(); skin != mDrawItems.end(); ++skin)
|
||||
{
|
||||
(*skin)->updateDrawItem(mTexture, _node);
|
||||
}
|
||||
}
|
||||
|
||||
void LayerItem::attachToLayerItemNode(ILayerNode* _item, bool _deep)
|
||||
{
|
||||
MYGUI_DEBUG_ASSERT(nullptr != _item, "attached item must be valid");
|
||||
|
|
|
@ -154,40 +154,133 @@ namespace MyGUI
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
RenderItem* LayerNode::addToRenderItem(ITexture* _texture, bool _firstQueue, bool _manualRender)
|
||||
RenderItem* LayerNode::addToRenderItem(ISubWidget* _subWidget, ITexture* _texture, bool _firstQueue, bool _separate)
|
||||
{
|
||||
RenderItem* item = getRenderItem(_texture, _firstQueue, _separate);
|
||||
item->addDrawItem(_subWidget, _subWidget->getVertexCount());
|
||||
return item;
|
||||
}
|
||||
|
||||
RenderItem* LayerNode::updateRenderItem(ISubWidget* _subWidget, RenderItem* _itemOld, ITexture* _texNew, bool _firstQueue, bool _separate)
|
||||
{
|
||||
if (_itemOld == nullptr)
|
||||
{
|
||||
return addToRenderItem(_subWidget, _texNew, _firstQueue, _separate);
|
||||
}
|
||||
bool separateOld = _itemOld->getManualRender();
|
||||
|
||||
// check in first array.
|
||||
VectorRenderItem::iterator itOld = std::find(mFirstRenderItems.begin(), mFirstRenderItems.end(), _itemOld);
|
||||
if (itOld != mFirstRenderItems.end())
|
||||
{
|
||||
ITexture* _texOld = _itemOld->getTexture();
|
||||
if (_texOld == _texNew && separateOld == _separate)
|
||||
{
|
||||
return _itemOld;
|
||||
}
|
||||
else
|
||||
{
|
||||
// break render item.
|
||||
VectorDrawItem frontDrawItems;
|
||||
VectorDrawItem tailDrawItems;
|
||||
|
||||
(*itOld)->breakDrawItems(_subWidget, frontDrawItems, tailDrawItems);
|
||||
|
||||
// front
|
||||
if (frontDrawItems.size())
|
||||
{
|
||||
itOld = insertNewRenderItem(_texOld, separateOld, frontDrawItems, mFirstRenderItems, itOld);
|
||||
RenderItem* itemFront = *itOld;
|
||||
++itOld; //roll back to insert node,
|
||||
notifyRenderItemChanged(frontDrawItems, _itemOld, itemFront);
|
||||
}
|
||||
|
||||
//tail
|
||||
if (tailDrawItems.size())
|
||||
{
|
||||
itOld = insertNewRenderItem(_texOld, separateOld, tailDrawItems, mFirstRenderItems, itOld + 1);
|
||||
RenderItem* itemTail = *itOld;
|
||||
--itOld;//roll back to insert node,
|
||||
notifyRenderItemChanged(tailDrawItems, _itemOld, itemTail);
|
||||
}
|
||||
|
||||
// middle
|
||||
mOutOfDate = false;
|
||||
|
||||
if (0 == frontDrawItems.size())
|
||||
{
|
||||
if (*itOld != mFirstRenderItems.front())
|
||||
{
|
||||
// try combine vertices.
|
||||
VectorRenderItem::iterator preItem = itOld - 1;
|
||||
if ((*preItem)->getTexture() == _texNew && (((*preItem)->getManualRender() || _separate) == false) ) // manual render cannot combine vertices
|
||||
{
|
||||
(*preItem)->addDrawItem(_subWidget, _subWidget->getVertexCount());
|
||||
_subWidget->onRenderItemChanged(this, _itemOld, *preItem);
|
||||
|
||||
(*itOld)->clearDrawItems();
|
||||
return *preItem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (0 == tailDrawItems.size())
|
||||
{
|
||||
if (*itOld != mFirstRenderItems.back())
|
||||
{
|
||||
// try combine vertices.
|
||||
VectorRenderItem::iterator nextItem = itOld + 1;
|
||||
if ((*nextItem)->getTexture() == _texNew && ((*nextItem)->getManualRender() || _separate == false) ) // manual render cannot combine vertices.
|
||||
{
|
||||
(*nextItem)->insertDrawItem(0, _subWidget, _subWidget->getVertexCount());
|
||||
_subWidget->onRenderItemChanged(this, _itemOld, *nextItem);
|
||||
|
||||
(*itOld)->clearDrawItems();
|
||||
return *nextItem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
(*itOld)->clearDrawItems();
|
||||
(*itOld)->setManualRender(_separate);
|
||||
(*itOld)->setTexture(_texNew);
|
||||
(*itOld)->addDrawItem(_subWidget, _subWidget->getVertexCount());
|
||||
return *itOld;
|
||||
}
|
||||
}
|
||||
|
||||
// check in second array.
|
||||
_itemOld->removeDrawItem(_subWidget);
|
||||
return addToRenderItem(_subWidget, _texNew, _firstQueue, _separate);
|
||||
}
|
||||
|
||||
RenderItem* LayerNode::getRenderItem(ITexture* _texture, bool _firstQueue, bool _manualRender)
|
||||
{
|
||||
// для первичной очереди нужен порядок
|
||||
if (_firstQueue)
|
||||
{
|
||||
if (mFirstRenderItems.empty() || _manualRender)
|
||||
{
|
||||
// создаем новый буфер
|
||||
RenderItem* item = new RenderItem();
|
||||
item->setTexture(_texture);
|
||||
item->setManualRender(_manualRender);
|
||||
mFirstRenderItems.push_back(item);
|
||||
|
||||
mOutOfDate = false;
|
||||
|
||||
return item;
|
||||
return pushNewRenderItem(mFirstRenderItems, _texture, _manualRender);
|
||||
}
|
||||
|
||||
// find first empty element.
|
||||
// если в конце пустой буфер, то нуна найти последний пустой с краю
|
||||
// либо с нужной текстурой за пустым
|
||||
VectorRenderItem::reverse_iterator iter = mFirstRenderItems.rbegin();
|
||||
if ((*iter)->getNeedVertexCount() == 0)
|
||||
if ((*iter)->getDrawItemCount() == 0)
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
VectorRenderItem::reverse_iterator next = iter + 1;
|
||||
if (next != mFirstRenderItems.rend())
|
||||
{
|
||||
if ((*next)->getNeedVertexCount() == 0)
|
||||
if ((*next)->getDrawItemCount() == 0)
|
||||
{
|
||||
iter = next;
|
||||
continue;
|
||||
}
|
||||
else if ((*next)->getTexture() == _texture)
|
||||
else if ((*next)->getTexture() == _texture && (!(*iter)->getManualRender()) )
|
||||
{
|
||||
iter = next;
|
||||
}
|
||||
|
@ -197,59 +290,100 @@ namespace MyGUI
|
|||
}
|
||||
|
||||
(*iter)->setTexture(_texture);
|
||||
|
||||
(*iter)->setManualRender(_manualRender);
|
||||
mOutOfDate = false;
|
||||
|
||||
return (*iter);
|
||||
}
|
||||
// последний буфер с нужной текстурой
|
||||
else if ((*iter)->getTexture() == _texture)
|
||||
else if ( (*iter)->getTexture() == _texture && (!(*iter)->getManualRender()) )
|
||||
{
|
||||
mOutOfDate = false;
|
||||
|
||||
return *iter;
|
||||
}
|
||||
|
||||
// создаем новый буфер
|
||||
RenderItem* item = new RenderItem();
|
||||
item->setTexture(_texture);
|
||||
item->setManualRender(_manualRender);
|
||||
mFirstRenderItems.push_back(item);
|
||||
|
||||
mOutOfDate = false;
|
||||
|
||||
return item;
|
||||
return pushNewRenderItem(mFirstRenderItems, _texture, _manualRender);
|
||||
}
|
||||
|
||||
// для второй очереди порядок неважен
|
||||
for (VectorRenderItem::iterator iter = mSecondRenderItems.begin(); iter != mSecondRenderItems.end(); ++iter)
|
||||
{
|
||||
// либо такая же текстура, либо пустой буфер
|
||||
if ((*iter)->getTexture() == _texture)
|
||||
if ( (*iter)->getTexture() == _texture && (!(*iter)->getManualRender()) )
|
||||
{
|
||||
mOutOfDate = false;
|
||||
|
||||
return (*iter);
|
||||
}
|
||||
else if ((*iter)->getNeedVertexCount() == 0)
|
||||
else if ((*iter)->getDrawItemCount() == 0)
|
||||
{
|
||||
(*iter)->setTexture(_texture);
|
||||
|
||||
(*iter)->setManualRender(_manualRender);
|
||||
mOutOfDate = false;
|
||||
|
||||
return (*iter);
|
||||
}
|
||||
}
|
||||
// не найденно создадим новый
|
||||
RenderItem* item = new RenderItem();
|
||||
|
||||
return pushNewRenderItem(mSecondRenderItems, _texture, _manualRender);
|
||||
}
|
||||
|
||||
RenderItem* LayerNode::newRenderItem(ITexture* _texture, bool _manualRender)
|
||||
{
|
||||
RenderItem* item = new RenderItem(this);
|
||||
item->setTexture(_texture);
|
||||
item->setManualRender(_manualRender);
|
||||
return item;
|
||||
}
|
||||
|
||||
mSecondRenderItems.push_back(item);
|
||||
VectorRenderItem::iterator LayerNode::insertNewRenderItem(ITexture* _texture, bool _manualRender, const VectorDrawItem& _nodes,
|
||||
VectorRenderItem& _array, const VectorRenderItem::iterator& _where)
|
||||
{
|
||||
RenderItem* _item = nullptr;
|
||||
|
||||
if (_array.size())
|
||||
{
|
||||
if (_array.back()->getDrawItemCount() == 0)
|
||||
{
|
||||
_item = _array.back();
|
||||
_array.pop_back();
|
||||
_item->setManualRender(_manualRender);
|
||||
_item->setTexture(_texture);
|
||||
}
|
||||
}
|
||||
|
||||
if (nullptr == _item)
|
||||
{
|
||||
_item = newRenderItem(_texture, _manualRender);
|
||||
}
|
||||
|
||||
VectorDrawItem::const_iterator itf = _nodes.begin();
|
||||
VectorDrawItem::const_iterator endf = _nodes.end();
|
||||
while(itf != endf)
|
||||
{
|
||||
_item->addDrawItem(itf->first, itf->second);
|
||||
++itf;
|
||||
}
|
||||
return _array.insert(_where, _item);
|
||||
}
|
||||
|
||||
RenderItem* LayerNode::pushNewRenderItem(VectorRenderItem& _array, ITexture* _texture, bool _manualRender)
|
||||
{
|
||||
RenderItem* item = newRenderItem(_texture, _manualRender);
|
||||
mOutOfDate = false;
|
||||
_array.push_back(item);
|
||||
return _array.back();
|
||||
}
|
||||
|
||||
return mSecondRenderItems.back();
|
||||
void LayerNode::notifyRenderItemChanged(const VectorDrawItem& _nodes, RenderItem* _old, RenderItem* _new)
|
||||
{
|
||||
VectorDrawItem::const_iterator itt = _nodes.begin();
|
||||
VectorDrawItem::const_iterator endt = _nodes.end();
|
||||
while(itt != endt)
|
||||
{
|
||||
itt->first->onRenderItemChanged(this, _old, _new);
|
||||
++itt;
|
||||
}
|
||||
}
|
||||
|
||||
void LayerNode::attachLayerItem(ILayerItem* _item)
|
||||
|
@ -298,7 +432,7 @@ namespace MyGUI
|
|||
VectorRenderItem::iterator iter2 = iter1 + 1;
|
||||
while (iter2 != mFirstRenderItems.end())
|
||||
{
|
||||
if ((*iter1)->getNeedVertexCount() == 0 && !(*iter1)->getManualRender())
|
||||
if ((*iter1)->getDrawItemCount() == 0)//(*iter1)->getNeedVertexCount() == 0 && !(*iter1)->getManualRender())
|
||||
{
|
||||
RenderItem* tmp = (*iter1);
|
||||
(*iter1) = (*iter2);
|
||||
|
|
|
@ -226,13 +226,27 @@ namespace MyGUI
|
|||
mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
size_t PolygonalSkin::getVertexCount() const
|
||||
{
|
||||
return mVertexCount;
|
||||
}
|
||||
|
||||
void PolygonalSkin::createDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(!mRenderItem, "mRenderItem must be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->addToRenderItem(_texture, true, false);
|
||||
mRenderItem->addDrawItem(this, mVertexCount);
|
||||
mRenderItem = mNode->addToRenderItem(this, _texture, true, false);
|
||||
//mRenderItem->addDrawItem(this, mVertexCount);
|
||||
}
|
||||
|
||||
void PolygonalSkin::updateDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(mRenderItem, "mRenderItem must not be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->updateRenderItem(this, mRenderItem, _texture, true, false);
|
||||
//mRenderItem->addDrawItem(this, mVertexCount);
|
||||
}
|
||||
|
||||
void PolygonalSkin::destroyDrawItem()
|
||||
|
@ -244,6 +258,14 @@ namespace MyGUI
|
|||
mRenderItem = nullptr;
|
||||
}
|
||||
|
||||
void PolygonalSkin::onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new)
|
||||
{
|
||||
if (mNode == _sender)
|
||||
{
|
||||
mRenderItem = _new;
|
||||
}
|
||||
}
|
||||
|
||||
void PolygonalSkin::doRender()
|
||||
{
|
||||
if ((!mVisible) || mEmptyView)
|
||||
|
@ -262,12 +284,26 @@ namespace MyGUI
|
|||
|
||||
size_t size = mResultVerticiesPos.size();
|
||||
|
||||
IMaterialType type = mGray ? MyGUI::GRAY : MyGUI::NORMAL;
|
||||
for (size_t i = 0; i < size; ++i)
|
||||
{
|
||||
verticies[i].set(mResultVerticiesPos[i].left, mResultVerticiesPos[i].top, vertex_z, mResultVerticiesUV[i].left, mResultVerticiesUV[i].top, mCurrentColour);
|
||||
}
|
||||
|
||||
mRenderItem->setLastVertexCount(size);
|
||||
|
||||
mRenderItem->setMaterialType(type);
|
||||
}
|
||||
|
||||
void PolygonalSkin::_setGray(bool _gray)
|
||||
{
|
||||
if (mGray == _gray)
|
||||
return;
|
||||
|
||||
mGray = _gray;
|
||||
|
||||
if (nullptr != mNode)
|
||||
mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
void PolygonalSkin::_setColour(const Colour& _value)
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
namespace MyGUI
|
||||
{
|
||||
|
||||
RenderItem::RenderItem() :
|
||||
RenderItem::RenderItem(ILayerNode* _owner) :
|
||||
mTexture(nullptr),
|
||||
mNeedVertexCount(0),
|
||||
mOutOfDate(false),
|
||||
|
@ -42,7 +42,9 @@ namespace MyGUI
|
|||
mVertexBuffer(nullptr),
|
||||
mRenderTarget(nullptr),
|
||||
mCompression(false),
|
||||
mManualRender(false)
|
||||
mManualRender(false),
|
||||
mLayerNode(_owner),
|
||||
mMaterialType(MyGUI::NORMAL)
|
||||
{
|
||||
mVertexBuffer = RenderManager::getInstance().createVertexBuffer();
|
||||
}
|
||||
|
@ -105,7 +107,7 @@ namespace MyGUI
|
|||
}
|
||||
else
|
||||
{
|
||||
_target->doRender(mVertexBuffer, mTexture, mCountVertex);
|
||||
_target->doRender(mVertexBuffer, mTexture, mCountVertex,mMaterialType);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -135,6 +137,17 @@ namespace MyGUI
|
|||
MYGUI_EXCEPT("DrawItem not found");
|
||||
}
|
||||
|
||||
void RenderItem::clearDrawItems()
|
||||
{
|
||||
mNeedVertexCount =0;
|
||||
mDrawItems.clear();
|
||||
mOutOfDate = true;
|
||||
mVertexBuffer->setVertexCount(mNeedVertexCount);
|
||||
|
||||
mTexture = nullptr;
|
||||
mCompression = true;
|
||||
}
|
||||
|
||||
void RenderItem::addDrawItem(ISubWidget* _item, size_t _count)
|
||||
{
|
||||
|
||||
|
@ -153,6 +166,22 @@ namespace MyGUI
|
|||
mVertexBuffer->setVertexCount(mNeedVertexCount);
|
||||
}
|
||||
|
||||
void RenderItem::insertDrawItem(size_t index, ISubWidget* _item, size_t _count)
|
||||
{
|
||||
// проверяем только в дебаге
|
||||
#if MYGUI_DEBUG_MODE == 1
|
||||
for (VectorDrawItem::iterator iter = mDrawItems.begin(); iter != mDrawItems.end(); ++iter)
|
||||
{
|
||||
MYGUI_ASSERT((*iter).first != _item, "DrawItem exist");
|
||||
}
|
||||
#endif
|
||||
mDrawItems.insert(mDrawItems.begin() + index, DrawItemInfo(_item, _count));
|
||||
mNeedVertexCount += _count;
|
||||
mOutOfDate = true;
|
||||
|
||||
mVertexBuffer->setVertexCount(mNeedVertexCount);
|
||||
}
|
||||
|
||||
void RenderItem::reallockDrawItem(ISubWidget* _item, size_t _count)
|
||||
{
|
||||
for (VectorDrawItem::iterator iter = mDrawItems.begin(); iter != mDrawItems.end(); ++iter)
|
||||
|
@ -175,6 +204,30 @@ namespace MyGUI
|
|||
MYGUI_EXCEPT("DrawItem not found");
|
||||
}
|
||||
|
||||
void RenderItem::breakDrawItems(ISubWidget* _break, VectorDrawItem& _fronts, VectorDrawItem& _tails)
|
||||
{
|
||||
VectorDrawItem::const_iterator it = mDrawItems.begin();
|
||||
while(it != mDrawItems.end())
|
||||
{
|
||||
if (it->first != _break)
|
||||
{
|
||||
_fronts.push_back(*it);
|
||||
}
|
||||
else
|
||||
{
|
||||
++it;
|
||||
break;
|
||||
}
|
||||
++it;
|
||||
}
|
||||
|
||||
while(it != mDrawItems.end())
|
||||
{
|
||||
_tails.push_back(*it);
|
||||
++it;
|
||||
}
|
||||
}
|
||||
|
||||
void RenderItem::setTexture(ITexture* _value)
|
||||
{
|
||||
if (mTexture == _value)
|
||||
|
@ -252,4 +305,14 @@ namespace MyGUI
|
|||
return mRenderTarget;
|
||||
}
|
||||
|
||||
void RenderItem::setMaterialType(IMaterialType _type)
|
||||
{
|
||||
if(mMaterialType == _type)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
mMaterialType = mMaterialType | _type;
|
||||
}
|
||||
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -159,13 +159,34 @@ namespace MyGUI
|
|||
mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
size_t RotatingSkin::getVertexCount() const
|
||||
{
|
||||
return (GEOMETRY_VERTICIES_TOTAL_COUNT - 2) * 3;
|
||||
}
|
||||
|
||||
void RotatingSkin::onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new)
|
||||
{
|
||||
if (mNode == _sender)
|
||||
{
|
||||
mRenderItem = _new;
|
||||
}
|
||||
}
|
||||
|
||||
void RotatingSkin::createDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(!mRenderItem, "mRenderItem must be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->addToRenderItem(_texture, true, false);
|
||||
mRenderItem->addDrawItem(this, (GEOMETRY_VERTICIES_TOTAL_COUNT - 2) * 3);
|
||||
mRenderItem = mNode->addToRenderItem(this, _texture, true, false);
|
||||
//mRenderItem->addDrawItem(this, (GEOMETRY_VERTICIES_TOTAL_COUNT - 2) * 3);
|
||||
}
|
||||
|
||||
void RotatingSkin::updateDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(mRenderItem, "mRenderItem must not be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->updateRenderItem(this, mRenderItem, _texture, true, false);
|
||||
}
|
||||
|
||||
void RotatingSkin::destroyDrawItem()
|
||||
|
@ -194,6 +215,7 @@ namespace MyGUI
|
|||
mGeometryOutdated = false;
|
||||
}
|
||||
|
||||
IMaterialType type = mGray ? MyGUI::GRAY : MyGUI::NORMAL;
|
||||
for (int i = 1; i < GEOMETRY_VERTICIES_TOTAL_COUNT - 1; ++i)
|
||||
{
|
||||
verticies[3 * i - 3].set(mResultVerticiesPos[0].left, mResultVerticiesPos[0].top, vertex_z, mResultVerticiesUV[0].left, mResultVerticiesUV[0].top, mCurrentColour);
|
||||
|
@ -202,6 +224,19 @@ namespace MyGUI
|
|||
}
|
||||
|
||||
mRenderItem->setLastVertexCount((GEOMETRY_VERTICIES_TOTAL_COUNT - 2) * 3);
|
||||
|
||||
mRenderItem->setMaterialType(type);
|
||||
}
|
||||
|
||||
void RotatingSkin::_setGray(bool _gray)
|
||||
{
|
||||
if (mGray == _gray)
|
||||
return;
|
||||
|
||||
mGray = _gray;
|
||||
|
||||
if (nullptr != mNode)
|
||||
mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
void RotatingSkin::_setColour(const Colour& _value)
|
||||
|
|
|
@ -48,6 +48,16 @@ namespace MyGUI
|
|||
(*skin)->setVisible(_value);
|
||||
}
|
||||
|
||||
void SkinItem::_setSkinItemGray(bool _value)
|
||||
{
|
||||
for (VectorSubWidget::iterator skin = mSubSkinChild.begin(); skin != mSubSkinChild.end(); ++skin)
|
||||
{
|
||||
ISubWidgetRect* rect = (*skin)->castType<ISubWidgetRect>(false);
|
||||
if (rect)
|
||||
rect->_setGray(_value);
|
||||
}
|
||||
}
|
||||
|
||||
void SkinItem::_setSkinItemColour(const Colour& _value)
|
||||
{
|
||||
for (VectorSubWidget::iterator skin = mSubSkinChild.begin(); skin != mSubSkinChild.end(); ++skin)
|
||||
|
|
|
@ -186,13 +186,35 @@ namespace MyGUI
|
|||
if (nullptr != mNode) mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
size_t SubSkin::getVertexCount() const
|
||||
{
|
||||
return VertexQuad::VertexCount;
|
||||
}
|
||||
|
||||
void SubSkin::onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new)
|
||||
{
|
||||
if (mNode == _sender)
|
||||
{
|
||||
mRenderItem = _new;
|
||||
}
|
||||
}
|
||||
|
||||
void SubSkin::createDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(!mRenderItem, "mRenderItem must be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->addToRenderItem(_texture, true, mSeparate);
|
||||
mRenderItem->addDrawItem(this, VertexQuad::VertexCount);
|
||||
mRenderItem = mNode->addToRenderItem(this, _texture, true, mSeparate);
|
||||
//mRenderItem->addDrawItem(this, VertexQuad::VertexCount);
|
||||
}
|
||||
|
||||
void SubSkin::updateDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(mRenderItem, "mRenderItem must not be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->updateRenderItem(this, mRenderItem, _texture, true, mSeparate);
|
||||
//mRenderItem->addDrawItem(this, VertexQuad::VertexCount);
|
||||
}
|
||||
|
||||
void SubSkin::destroyDrawItem()
|
||||
|
@ -251,6 +273,7 @@ namespace MyGUI
|
|||
float vertex_right = vertex_left + (info.pixScaleX * (float)mCurrentCoord.width * 2);
|
||||
float vertex_top = -(((info.pixScaleY * (float)(mCurrentCoord.top + mCroppedParent->getAbsoluteTop() - info.topOffset) + info.vOffset) * 2) - 1);
|
||||
float vertex_bottom = vertex_top - (info.pixScaleY * (float)mCurrentCoord.height * 2);
|
||||
IMaterialType type = mGray ? MyGUI::GRAY : MyGUI::NORMAL;
|
||||
|
||||
quad->set(
|
||||
vertex_left,
|
||||
|
@ -266,6 +289,19 @@ namespace MyGUI
|
|||
);
|
||||
|
||||
mRenderItem->setLastVertexCount(VertexQuad::VertexCount);
|
||||
|
||||
mRenderItem->setMaterialType(type);
|
||||
}
|
||||
|
||||
void SubSkin::_setGray(bool _gray)
|
||||
{
|
||||
if (mGray == _gray)
|
||||
return;
|
||||
|
||||
mGray = _gray;
|
||||
|
||||
if (nullptr != mNode)
|
||||
mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
void SubSkin::_setColour(const Colour& _value)
|
||||
|
|
|
@ -224,6 +224,7 @@ namespace MyGUI
|
|||
float right = window_left;
|
||||
float top = window_top;
|
||||
float bottom = window_top;
|
||||
IMaterialType type = mGray ? MyGUI::GRAY : MyGUI::NORMAL;
|
||||
|
||||
for (int y = 0; y < mCoord.height; y += mTileSize.height)
|
||||
{
|
||||
|
@ -334,6 +335,25 @@ namespace MyGUI
|
|||
}
|
||||
|
||||
mRenderItem->setLastVertexCount(VertexQuad::VertexCount * count);
|
||||
|
||||
mRenderItem->setMaterialType(type);
|
||||
}
|
||||
|
||||
void TileRect::onRenderItemChanged(ILayerNode* _sender, RenderItem* _old, RenderItem* _new)
|
||||
{
|
||||
if (mNode == _sender)
|
||||
{
|
||||
mRenderItem = _new;
|
||||
}
|
||||
}
|
||||
|
||||
void TileRect::updateDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
{
|
||||
MYGUI_ASSERT(mRenderItem, "mRenderItem must not be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->updateRenderItem(this, mRenderItem, _texture, true, false);
|
||||
//mRenderItem->addDrawItem(this, mCountVertex);
|
||||
}
|
||||
|
||||
void TileRect::createDrawItem(ITexture* _texture, ILayerNode* _node)
|
||||
|
@ -341,8 +361,13 @@ namespace MyGUI
|
|||
MYGUI_ASSERT(!mRenderItem, "mRenderItem must be nullptr");
|
||||
|
||||
mNode = _node;
|
||||
mRenderItem = mNode->addToRenderItem(_texture, true, false);
|
||||
mRenderItem->addDrawItem(this, mCountVertex);
|
||||
mRenderItem = mNode->addToRenderItem(this, _texture, true, false);
|
||||
//mRenderItem->addDrawItem(this, mCountVertex);
|
||||
}
|
||||
|
||||
size_t TileRect::getVertexCount() const
|
||||
{
|
||||
return mCountVertex;
|
||||
}
|
||||
|
||||
void TileRect::destroyDrawItem()
|
||||
|
@ -364,6 +389,17 @@ namespace MyGUI
|
|||
_setUVSet(data->getRect());
|
||||
}
|
||||
|
||||
void TileRect::_setGray(bool _gray)
|
||||
{
|
||||
if (mGray == _gray)
|
||||
return;
|
||||
|
||||
mGray = _gray;
|
||||
|
||||
if (nullptr != mNode)
|
||||
mNode->outOfDate(mRenderItem);
|
||||
}
|
||||
|
||||
void TileRect::_setColour(const Colour& _value)
|
||||
{
|
||||
uint32 colour = texture_utility::toColourARGB(_value);
|
||||
|
|
|
@ -74,6 +74,7 @@ namespace MyGUI
|
|||
skinInfo = SkinManager::getInstance().getByName(_skinName);
|
||||
|
||||
mCoord = _coord;
|
||||
mFloatCoord = _coord;
|
||||
|
||||
mAlign = Align::Default;
|
||||
mWidgetStyle = _style;
|
||||
|
@ -580,47 +581,99 @@ namespace MyGUI
|
|||
|
||||
bool need_move = false;
|
||||
bool need_size = false;
|
||||
IntCoord coord = mCoord;
|
||||
FloatCoord fcoord = mFloatCoord;
|
||||
|
||||
// первоначальное выравнивание
|
||||
if (mAlign.isHStretch())
|
||||
{
|
||||
// растягиваем
|
||||
coord.width = mCoord.width + (size.width - _oldsize.width);
|
||||
fcoord.width = mFloatCoord.width + (float)(size.width - _oldsize.width);
|
||||
need_size = true;
|
||||
}
|
||||
else if (mAlign.isRight())
|
||||
{
|
||||
// двигаем по правому краю
|
||||
coord.left = mCoord.left + (size.width - _oldsize.width);
|
||||
fcoord.left = mFloatCoord.left + (float)(size.width - _oldsize.width);
|
||||
need_move = true;
|
||||
}
|
||||
else if (mAlign.isHCenter())
|
||||
{
|
||||
// выравнивание по горизонтали без растяжения
|
||||
coord.left = (size.width - mCoord.width) / 2;
|
||||
fcoord.left = ((float)size.width - mFloatCoord.width) / 2.f;
|
||||
need_move = true;
|
||||
}
|
||||
|
||||
if (mAlign.isProHStretch())
|
||||
{
|
||||
float Delt = ((float)size.width * fcoord.left)/(float)_oldsize.width;
|
||||
fcoord.left = Delt;
|
||||
Delt = ((float)size.width * fcoord.width)/(float)_oldsize.width;
|
||||
fcoord.width = Delt;
|
||||
need_size = true;
|
||||
need_move = true;
|
||||
}
|
||||
else if (mAlign.isProRight())
|
||||
{
|
||||
float Delt = ((float)size.width * ((float)_oldsize.width - fcoord.right()))/(float)_oldsize.width;
|
||||
float newRight = (float)size.width - Delt;
|
||||
fcoord.left = newRight - mFloatCoord.width;
|
||||
need_move = true;
|
||||
}
|
||||
else if (mAlign.isProLeft())
|
||||
{
|
||||
float Delt = ((float)size.width * fcoord.left)/(float)_oldsize.width;
|
||||
fcoord.left = Delt;
|
||||
need_move = true;
|
||||
}
|
||||
|
||||
if (mAlign.isVStretch())
|
||||
{
|
||||
// растягиваем
|
||||
coord.height = mCoord.height + (size.height - _oldsize.height);
|
||||
fcoord.height = mFloatCoord.height + (float)(size.height - _oldsize.height);
|
||||
need_size = true;
|
||||
}
|
||||
else if (mAlign.isBottom())
|
||||
{
|
||||
// двигаем по нижнему краю
|
||||
coord.top = mCoord.top + (size.height - _oldsize.height);
|
||||
fcoord.top = mFloatCoord.top + (float)(size.height - _oldsize.height);
|
||||
need_move = true;
|
||||
}
|
||||
else if (mAlign.isVCenter())
|
||||
{
|
||||
// выравнивание по вертикали без растяжения
|
||||
coord.top = (size.height - mCoord.height) / 2;
|
||||
fcoord.top = ((float)size.height - mFloatCoord.height) / 2.f;
|
||||
need_move = true;
|
||||
}
|
||||
|
||||
if (mAlign.isProVStretch())
|
||||
{
|
||||
float Delt = (float)(size.height * fcoord.top)/(float)_oldsize.height;
|
||||
fcoord.top = Delt;
|
||||
Delt = (float)(size.height * fcoord.height)/(float)_oldsize.height;
|
||||
fcoord.height = Delt;
|
||||
need_size = true;
|
||||
need_move = true;
|
||||
}
|
||||
else if (mAlign.isProBottom())
|
||||
{
|
||||
float Delt = ((float)size.height * ((float)_oldsize.height - fcoord.bottom()))/(float)_oldsize.height;
|
||||
float newBottom = (float)size.height - Delt;
|
||||
fcoord.top = newBottom - mFloatCoord.height;
|
||||
need_move = true;
|
||||
}
|
||||
else if (mAlign.isProTop())
|
||||
{
|
||||
float Delt = ((float)size.height * fcoord.top)/(float)_oldsize.height;
|
||||
fcoord.top = Delt;
|
||||
need_move = true;
|
||||
}
|
||||
|
||||
IntCoord coord;
|
||||
coord.left = fcoord.left;
|
||||
coord.top = fcoord.top;
|
||||
coord.width = fcoord.width;
|
||||
coord.height = fcoord.height;
|
||||
|
||||
if (need_move)
|
||||
{
|
||||
if (need_size)
|
||||
|
@ -636,6 +689,8 @@ namespace MyGUI
|
|||
{
|
||||
_updateView(); // только если не вызвано передвижение и сайз
|
||||
}
|
||||
|
||||
mFloatCoord = fcoord;
|
||||
}
|
||||
|
||||
void Widget::setPosition(const IntPoint& _point)
|
||||
|
@ -649,6 +704,8 @@ namespace MyGUI
|
|||
(*widget)->_updateAbsolutePoint();
|
||||
|
||||
mCoord = _point;
|
||||
mFloatCoord.left = _point.left;
|
||||
mFloatCoord.top = _point.top;
|
||||
|
||||
_updateView();
|
||||
}
|
||||
|
@ -658,6 +715,8 @@ namespace MyGUI
|
|||
// устанавливаем новую координату а старую пускаем в расчеты
|
||||
IntSize old = mCoord.size();
|
||||
mCoord = _size;
|
||||
mFloatCoord.width = _size.width;
|
||||
mFloatCoord.height = _size.height;
|
||||
|
||||
bool visible = true;
|
||||
|
||||
|
@ -701,6 +760,7 @@ namespace MyGUI
|
|||
// устанавливаем новую координату а старую пускаем в расчеты
|
||||
IntCoord old = mCoord;
|
||||
mCoord = _coord;
|
||||
mFloatCoord = _coord;
|
||||
|
||||
bool visible = true;
|
||||
|
||||
|
@ -1012,6 +1072,14 @@ namespace MyGUI
|
|||
InputManager::getInstance().unlinkWidget(this);
|
||||
}
|
||||
|
||||
void Widget::setGray(bool _gray)
|
||||
{
|
||||
_setSkinItemGray(_gray);
|
||||
|
||||
for (VectorWidgetPtr::iterator widget = mWidgetChildSkin.begin(); widget != mWidgetChildSkin.end(); ++widget)
|
||||
(*widget)->setGray(_gray);
|
||||
}
|
||||
|
||||
void Widget::setColour(const Colour& _value)
|
||||
{
|
||||
_setSkinItemColour(_value);
|
||||
|
|
|
@ -34,11 +34,21 @@ THE SOFTWARE.
|
|||
#include "foundation/util/string.h"
|
||||
namespace MyGUI
|
||||
{
|
||||
class GenesisGuiGlobal
|
||||
{
|
||||
public:
|
||||
typedef std::vector<std::string> MediaLocations;
|
||||
static void pushMediaLocation(const std::string& path);
|
||||
static const MediaLocations& getMediaLocations();
|
||||
private:
|
||||
static GenesisGuiGlobal::MediaLocations _mediaLocations;
|
||||
};
|
||||
|
||||
class GenesisDataManager :
|
||||
public DataManager
|
||||
{
|
||||
public:
|
||||
typedef std::vector<std::string> MediaLocations;
|
||||
GenesisDataManager();
|
||||
|
||||
void initialise(const std::string& _group);
|
||||
|
@ -52,7 +62,7 @@ namespace MyGUI
|
|||
{
|
||||
return static_cast<GenesisDataManager*>(DataManager::getInstancePtr());
|
||||
}
|
||||
void SetResourcePath(const Util::String& path);
|
||||
|
||||
const std::string& getGroup() const
|
||||
{
|
||||
return mGroup;
|
||||
|
@ -74,10 +84,10 @@ namespace MyGUI
|
|||
const VectorString& getDataListNames(const std::string& _pattern, bool _fullpath);
|
||||
|
||||
private:
|
||||
IDataStream* getDataStream(const std::string& _url);
|
||||
std::string mGroup;
|
||||
bool mAllGroups;
|
||||
bool mIsInitialise;
|
||||
Util::String m_srcPath;
|
||||
};
|
||||
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -46,7 +46,7 @@ namespace MyGUI
|
|||
virtual void begin();
|
||||
virtual void end();
|
||||
|
||||
virtual void doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count);
|
||||
virtual void doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count,int _material_type);
|
||||
|
||||
virtual const RenderTargetInfo& getInfo()
|
||||
{
|
||||
|
@ -57,12 +57,13 @@ namespace MyGUI
|
|||
|
||||
private:
|
||||
RenderTargetInfo mRenderTargetInfo;
|
||||
GPtr<Graphic::RenderToTexture> m_rtt;
|
||||
GPtr<Graphic::RenderToTexture> mRtt;
|
||||
RenderBase::RenderTargetHandle mSaveRT;
|
||||
};
|
||||
|
||||
inline const GPtr<Graphic::RenderToTexture>& GenesisRTTexture::getRenderToTexture() const
|
||||
{
|
||||
return m_rtt;
|
||||
return mRtt;
|
||||
}
|
||||
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -34,9 +34,9 @@ THE SOFTWARE.
|
|||
#include "MyGUI_RenderManager.h"
|
||||
|
||||
|
||||
namespace Graphic
|
||||
namespace Resources
|
||||
{
|
||||
class Material;
|
||||
class MaterialResInfo;
|
||||
}
|
||||
|
||||
namespace MyGUI
|
||||
|
@ -84,7 +84,7 @@ namespace MyGUI
|
|||
virtual void end();
|
||||
|
||||
/** @see IRenderTarget::doRender */
|
||||
virtual void doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count);
|
||||
virtual void doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count, int _material_type = (int)MyGUI::NORMAL);
|
||||
|
||||
/** @see IRenderTarget::getInfo */
|
||||
virtual const RenderTargetInfo& getInfo();
|
||||
|
@ -110,7 +110,7 @@ namespace MyGUI
|
|||
|
||||
size_t getBatchCount() const;
|
||||
|
||||
static void SetResourcePath(const Util::String& path);
|
||||
Resources::MaterialResInfo* getMaterial() const;
|
||||
|
||||
void outofDate();
|
||||
|
||||
|
@ -136,24 +136,21 @@ namespace MyGUI
|
|||
|
||||
private:
|
||||
friend class GenesisRTTexture;
|
||||
void _loadShader();
|
||||
void _checkShader();
|
||||
bool _loadShader(std::string& _name);
|
||||
//void _checkShader();
|
||||
void _beforeDraw();
|
||||
GPtr<Graphic::Material> m_shader;
|
||||
void SetMaterialByType(int _type);
|
||||
GPtr<Resources::MaterialResInfo> m_shader;
|
||||
RenderBase::GPUProgramHandle* m_shaderHandle;
|
||||
static Util::String s_resourcePath;
|
||||
|
||||
GenesisVertexBufferMgr* m_VertexMgr;
|
||||
GenesisTextureMgr* m_TextureMgr;
|
||||
int m_MateriaType;
|
||||
};
|
||||
|
||||
inline void GenesisRenderManager::_checkShader()
|
||||
{
|
||||
if (NULL == m_shader)
|
||||
{
|
||||
_loadShader();
|
||||
}
|
||||
}
|
||||
//inline void GenesisRenderManager::_checkShader()
|
||||
//{
|
||||
// SetMaterialByType(m_MateriaType);
|
||||
//}
|
||||
|
||||
inline const IntSize& GenesisRenderManager::getResolution() const
|
||||
{
|
||||
|
@ -175,6 +172,11 @@ namespace MyGUI
|
|||
mUpdate = true;
|
||||
}
|
||||
|
||||
inline Resources::MaterialResInfo* GenesisRenderManager::getMaterial() const
|
||||
{
|
||||
return m_shader.get_unsafe();
|
||||
}
|
||||
|
||||
} // namespace MyGUI
|
||||
|
||||
#endif // __MYGUI_GENESIS_RENDER_MANAGER_H__
|
||||
|
|
|
@ -87,10 +87,11 @@ namespace MyGUI
|
|||
static RenderBase::PixelFormat::Code FormatMyGuiToWj(PixelFormat format);
|
||||
static RenderBase::RenderResource::Usage UsageMyGuiToWj(TextureUsage usage);
|
||||
|
||||
static void SetResourcePath(const Util::String& path);
|
||||
|
||||
private:
|
||||
|
||||
void createManualTexture(int _width, int _height, TextureUsage _usage, PixelFormat _format);
|
||||
void createManualRenderToTexture(int _width, int _height, TextureUsage _usage, PixelFormat _format);
|
||||
void loadTextureFromFile(const std::string& _filename);
|
||||
void setFormat(PixelFormat format);
|
||||
std::string mName;
|
||||
std::string mGroup;
|
||||
|
@ -107,7 +108,6 @@ namespace MyGUI
|
|||
TextureBuffer m_texStream;
|
||||
GPtr<Resources::TextureResInfo> m_texRes;
|
||||
bool m_bManualCreate;
|
||||
static Util::String s_resourcePath;
|
||||
};
|
||||
|
||||
inline GenesisTexture::TextureBuffer& GenesisTexture::GetBuffer()
|
||||
|
|
|
@ -33,24 +33,39 @@ THE SOFTWARE.
|
|||
#include "foundation/io/memorystream.h"
|
||||
#include "foundation/io/iointerface.h"
|
||||
#include "foundation/io/iointerfaceprotocol.h"
|
||||
//#include <Ogre.h>
|
||||
|
||||
//#include "MyGUI_LastHeader.h"
|
||||
|
||||
|
||||
#include "foundation/io/ioserver.h"
|
||||
|
||||
namespace MyGUI
|
||||
{
|
||||
GenesisDataManager::GenesisDataManager() :
|
||||
mAllGroups(false),
|
||||
|
||||
GenesisGuiGlobal::MediaLocations GenesisGuiGlobal::_mediaLocations;
|
||||
|
||||
const GenesisGuiGlobal::MediaLocations& GenesisGuiGlobal::getMediaLocations()
|
||||
{
|
||||
return _mediaLocations;
|
||||
}
|
||||
|
||||
void GenesisGuiGlobal::pushMediaLocation(const std::string& path)
|
||||
{
|
||||
if (std::find(_mediaLocations.begin(), _mediaLocations.end(), path) == _mediaLocations.end())
|
||||
{
|
||||
_mediaLocations.push_back(path);
|
||||
if (*(_mediaLocations.rbegin()->rbegin()) != '/')
|
||||
{
|
||||
_mediaLocations.rbegin()->push_back('/');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
GenesisDataManager::GenesisDataManager() :
|
||||
mAllGroups(false),
|
||||
mIsInitialise(false)
|
||||
{
|
||||
}
|
||||
void GenesisDataManager::SetResourcePath(const Util::String& path)
|
||||
{
|
||||
m_srcPath = path;
|
||||
}
|
||||
|
||||
void GenesisDataManager::initialise(const std::string& _group)
|
||||
{
|
||||
MYGUI_PLATFORM_ASSERT(!mIsInitialise, getClassTypeName() << " initialised twice");
|
||||
|
@ -77,54 +92,61 @@ void GenesisDataManager::shutdown()
|
|||
|
||||
IDataStream* GenesisDataManager::getData(const std::string& _name)
|
||||
{
|
||||
Util::String filename = _name.c_str();
|
||||
Util::String url = m_srcPath + filename;
|
||||
try
|
||||
std::string url;
|
||||
const GenesisGuiGlobal::MediaLocations& paths = GenesisGuiGlobal::getMediaLocations();
|
||||
if (paths.size() == 1)
|
||||
{
|
||||
//Ogre::DataStreamPtr stream = Ogre::ResourceGroupManager::getSingleton().openResource(_name, mGroup, true);
|
||||
//OgreDataStream* data = new OgreDataStream(stream);
|
||||
//return data;
|
||||
GPtr<IO::Stream> pStream = IO::MemoryStream::Create();
|
||||
n_assert( pStream );
|
||||
GPtr<IO::ReadStream> readStreamMsg = IO::ReadStream::Create();
|
||||
n_assert( readStreamMsg );
|
||||
readStreamMsg->SetFileName( url);
|
||||
readStreamMsg->SetStream( pStream );
|
||||
IO::IoInterface::Instance()->SendWait( readStreamMsg.upcast<Messaging::Message>() );
|
||||
url = paths.front() + _name;
|
||||
return getDataStream(url);
|
||||
}
|
||||
else
|
||||
{
|
||||
MediaLocations::const_iterator it = paths.begin();
|
||||
MediaLocations::const_iterator end = paths.end();
|
||||
|
||||
if ( !readStreamMsg->GetResult() )
|
||||
IO::IoServer* ios = IO::IoServer::Instance();
|
||||
|
||||
while(it != end)
|
||||
{
|
||||
n_warning( "GenesisDataManager::getData: can not open %s", _name.c_str() );
|
||||
return nullptr;
|
||||
url = *it + _name;
|
||||
if (ios->FileExists(IO::URI(url.c_str())))
|
||||
{
|
||||
return getDataStream(url);
|
||||
}
|
||||
++it;
|
||||
}
|
||||
pStream->SetAccessMode(IO::Stream::ReadAccess);
|
||||
if (pStream->Open())
|
||||
MYGUI_PLATFORM_LOG(Warning, std::string(std::string("file is not found:") + _name));
|
||||
return nullptr;
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
IDataStream* GenesisDataManager::getDataStream(const std::string& _url)
|
||||
{
|
||||
//try
|
||||
//{
|
||||
GPtr<IO::Stream> fileStream = IO::IoServer::Instance()->ReadFile(_url.c_str());
|
||||
if (fileStream.isvalid())
|
||||
{
|
||||
GPtr<IO::TextReader> tr = IO::TextReader::Create();
|
||||
|
||||
tr->SetStream(pStream);
|
||||
tr->SetStream(fileStream);
|
||||
GenesisDataStream* data = new GenesisDataStream(tr);
|
||||
return (IDataStream*)data;
|
||||
}
|
||||
|
||||
//GPtr<IO::Stream> stream = IO::IoServer::Instance()->CreateStream(IO::URI(url));
|
||||
//if (stream && stream->Open())
|
||||
//{
|
||||
// GPtr<IO::TextReader> tr = IO::TextReader::Create();
|
||||
// tr->SetStream(stream);
|
||||
// GenesisDataStream* data = new GenesisDataStream(tr);
|
||||
// return (IDataStream*)data;
|
||||
//}
|
||||
|
||||
}
|
||||
catch(...) //(const Ogre::FileNotFoundException& _e)
|
||||
{
|
||||
//MYGUI_PLATFORM_LOG(Warning, _e.getDescription());
|
||||
MYGUI_PLATFORM_LOG(Warning, std::string(std::string("file error:") + _name));
|
||||
MYGUI_PLATFORM_LOG(Warning, std::string(std::string("file error:") + _url));
|
||||
return nullptr;
|
||||
}
|
||||
MYGUI_PLATFORM_LOG(Warning, std::string(std::string("file error:") + _name));
|
||||
return nullptr;
|
||||
|
||||
|
||||
//}
|
||||
//catch(...) //(const Ogre::FileNotFoundException& _e)
|
||||
//{
|
||||
// //MYGUI_PLATFORM_LOG(Warning, _e.getDescription());
|
||||
// MYGUI_PLATFORM_LOG(Warning, std::string(std::string("file error:") + _url));
|
||||
// return nullptr;
|
||||
//}
|
||||
//MYGUI_PLATFORM_LOG(Warning, std::string(std::string("file error:") + _url));
|
||||
//return nullptr;
|
||||
}
|
||||
|
||||
bool GenesisDataManager::isDataExist(const std::string& _name)
|
||||
|
|
|
@ -39,7 +39,7 @@ namespace MyGUI
|
|||
|
||||
GenesisRTTexture::GenesisRTTexture(GPtr<Graphic::RenderToTexture>& rtt)
|
||||
{
|
||||
m_rtt = rtt;
|
||||
mRtt = rtt;
|
||||
const GPtr<RenderBase::RenderTarget>& renderTarget = rtt->GetRenderTarget();
|
||||
|
||||
size_t width = renderTarget->GetWidth();
|
||||
|
@ -55,25 +55,29 @@ namespace MyGUI
|
|||
mRenderTargetInfo.pixScaleY = 1.0f / float(height);
|
||||
}
|
||||
|
||||
|
||||
|
||||
GenesisRTTexture::~GenesisRTTexture()
|
||||
{
|
||||
m_rtt = NULL;
|
||||
mRtt = NULL;
|
||||
}
|
||||
|
||||
void GenesisRTTexture::begin()
|
||||
{
|
||||
GenesisRenderManager::getInstance()._beforeDraw();
|
||||
Graphic::GraphicSystem::Instance()->SetRenderTarget(m_rtt->GetTargetHandle(), 0);
|
||||
mSaveRT = Graphic::GraphicSystem::Instance()->GetRenderTarget();
|
||||
Graphic::GraphicSystem::Instance()->SetRenderTarget(mRtt->GetTargetHandle(), 0, RenderBase::RenderTarget::ClearAll);
|
||||
}
|
||||
|
||||
void GenesisRTTexture::end()
|
||||
{
|
||||
Graphic::GraphicSystem::Instance()->SetRenderTarget(RenderBase::TextureHandle(NULL), 0);
|
||||
Graphic::GraphicSystem::Instance()->SetRenderTarget(mSaveRT, 0, RenderBase::RenderTarget::ClearNone);
|
||||
mSaveRT = NULL;
|
||||
}
|
||||
|
||||
void GenesisRTTexture::doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count)
|
||||
void GenesisRTTexture::doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count,int _material_type)
|
||||
{
|
||||
GenesisRenderManager::getInstance().doRender(_buffer, _texture, _count);
|
||||
GenesisRenderManager::getInstance().doRender(_buffer, _texture, _count,_material_type);
|
||||
}
|
||||
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -29,7 +29,7 @@ THE SOFTWARE.
|
|||
#include "stdneb.h"
|
||||
#include "graphicsystem/GraphicSystem.h"
|
||||
#include "rendersystem/RenderSystem.h"
|
||||
#include "materialmaker/parser/GenesisShaderParser.h"
|
||||
#include "resource/resourcemanager.h"
|
||||
#include "foundation/io/ioserver.h"
|
||||
|
||||
#include "MyGUI_GenesisDataManager.h"
|
||||
|
@ -51,8 +51,11 @@ namespace MyGUI
|
|||
{
|
||||
using namespace Graphic;
|
||||
|
||||
Util::String GenesisRenderManager::s_resourcePath = "";
|
||||
Util::String g_shaderName = "gui.shader";
|
||||
std::string g_NormalShaderName = "sys:gui.shader";
|
||||
std::string g_GrayShaderName = "sys:gui_gray.shader";
|
||||
|
||||
std::string g_NormalShaderNameOld = "asset:UIMedia/gui.shader";
|
||||
std::string g_GrayShaderNameOld = "asset:UIMedia/gui_gray.shader";
|
||||
|
||||
GenesisRenderManager& GenesisRenderManager::getInstance()
|
||||
{
|
||||
|
@ -72,6 +75,7 @@ namespace MyGUI
|
|||
, m_shaderHandle(NULL)
|
||||
,m_VertexMgr(NULL)
|
||||
,m_TextureMgr(NULL)
|
||||
,m_MateriaType(MyGUI::NORMAL)
|
||||
{
|
||||
#if RENDERDEVICE_D3D9
|
||||
mVertexFormat = VertexColourType::ColourARGB;
|
||||
|
@ -87,11 +91,16 @@ namespace MyGUI
|
|||
void GenesisRenderManager::initialise(int width, int height, int bufferWidth, int bufferHeight)
|
||||
{
|
||||
mIsInitialise = true;
|
||||
_checkShader();
|
||||
//_checkShader();
|
||||
|
||||
m_VertexMgr = MyGUI::GenesisVertexBufferMgr::Create();
|
||||
m_TextureMgr = MyGUI::GenesisTextureMgr::Create();
|
||||
setResolution(width, height, bufferWidth, bufferHeight);
|
||||
|
||||
if(!_loadShader(g_NormalShaderName))
|
||||
{
|
||||
_loadShader(g_NormalShaderNameOld);
|
||||
}
|
||||
}
|
||||
|
||||
void GenesisRenderManager::shutdown()
|
||||
|
@ -187,29 +196,27 @@ namespace MyGUI
|
|||
outofDate();
|
||||
}
|
||||
|
||||
void GenesisRenderManager::doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count)
|
||||
void GenesisRenderManager::doRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count,int _material_type)
|
||||
{
|
||||
GraphicSystem* gs = GraphicSystem::Instance();
|
||||
if (gs)
|
||||
{
|
||||
GenesisTexture* tex = static_cast<GenesisTexture*>(_texture);
|
||||
if (tex)
|
||||
if(_material_type != m_MateriaType)
|
||||
{
|
||||
if (tex->GetTextureHandle().IsValid())
|
||||
SetMaterialByType(_material_type);
|
||||
}
|
||||
|
||||
GenesisTexture* tex = static_cast<GenesisTexture*>(_texture);
|
||||
if (tex && tex->GetTextureHandle().IsValid())
|
||||
{
|
||||
GenesisVertexBuffer* vb = static_cast<GenesisVertexBuffer*>(_buffer);
|
||||
RenderBase::PrimitiveHandle handle = vb->GetPrimitiveHandle();
|
||||
if (handle.IsValid())
|
||||
{
|
||||
gs->SetTexture(0,tex->GetTextureHandle());
|
||||
|
||||
gs->SetRenderState(m_shader->GetHandle()->GetTech()->GetDefaultPass()->GetRenderStateObject(), 0);
|
||||
gs->DrawPrimitive(handle, 0, _count, 0 , 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
GenesisVertexBuffer* vb = static_cast<GenesisVertexBuffer*>(_buffer);
|
||||
RenderBase::PrimitiveHandle handle = vb->GetPrimitiveHandle();
|
||||
if (vb)
|
||||
{
|
||||
gs->DrawPrimitive(handle, 0, _count, 0 , 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -335,35 +342,65 @@ namespace MyGUI
|
|||
{
|
||||
GraphicSystem* gs = GraphicSystem::Instance();
|
||||
gs->SetShaderProgram(*m_shaderHandle);
|
||||
gs->SetRenderState(m_shader->GetTech()->GetDefaultPass()->GetRenderStateObject(), 0);
|
||||
}
|
||||
void GenesisRenderManager::_loadShader()
|
||||
bool GenesisRenderManager::_loadShader(std::string& _name)
|
||||
{
|
||||
m_shaderHandle = nullptr;
|
||||
//static Util::String file_name("mygui.cg");
|
||||
Util::StringAtom fileName(s_resourcePath + g_shaderName);//
|
||||
if(IO::IoServer::Instance()->FileExists(fileName))
|
||||
Resources::ResourceId id = _name.c_str();
|
||||
if(IO::IoServer::Instance()->FileExists(id))
|
||||
{
|
||||
m_shader = GenesisMaterialMaker::MakeFromShader(fileName);
|
||||
m_shader = Resources::ResourceManager::Instance()->CreateMaterialInfo(id, false);//GenesisMaterialMaker::MakeFromShader(fileName);
|
||||
if (m_shader)
|
||||
{
|
||||
m_shaderHandle = const_cast<RenderBase::GPUProgramHandle*>(&m_shader->GetTech(0)->GetDefaultPass()->GetGPUProgramHandle(0));
|
||||
m_shaderHandle = const_cast<RenderBase::GPUProgramHandle*>(&m_shader->GetHandle()->GetTech(0)->GetDefaultPass()->GetGPUProgramHandle(0));
|
||||
//assert(NULL != m_shader);
|
||||
//assert(NULL != m_shaderHandle);
|
||||
GPtr<RenderBase::RenderStateDesc>& rso = m_shader->GetTech()->GetDefaultPass()->GetRenderStateObject();
|
||||
GPtr<RenderBase::RenderStateDesc>& rso = m_shader->GetHandle()->GetTech()->GetDefaultPass()->GetRenderStateObject();
|
||||
RenderBase::DeviceDepthAndStencilState state;
|
||||
state = rso->GetDepthAndStencilState();
|
||||
state.m_stencilTwoEnable = false;
|
||||
state.m_depthEnable = false;
|
||||
state.m_depthWriteMask = false;
|
||||
rso->SetDepthAndStencilState(state);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void GenesisRenderManager::SetResourcePath(const Util::String& path)
|
||||
void GenesisRenderManager::SetMaterialByType(int _type)
|
||||
{
|
||||
s_resourcePath = path;
|
||||
}
|
||||
//ÔÝʱ ÎÞÓá£
|
||||
//switch(_type)
|
||||
//{
|
||||
//case MyGUI::NORMAL:
|
||||
// {
|
||||
// if(!_loadShader(g_NormalShaderName))
|
||||
// {
|
||||
// _loadShader(g_NormalShaderNameOld);
|
||||
// }
|
||||
// }
|
||||
// break;
|
||||
//case MyGUI::GRAY:
|
||||
// {
|
||||
// if(!_loadShader(g_GrayShaderName))
|
||||
// {
|
||||
// _loadShader(g_GrayShaderNameOld);
|
||||
// }
|
||||
// }
|
||||
// break;
|
||||
//default:
|
||||
// {
|
||||
// if(!_loadShader(g_NormalShaderName))
|
||||
// {
|
||||
// _loadShader(g_NormalShaderNameOld);
|
||||
// }
|
||||
// }
|
||||
// break;
|
||||
//}
|
||||
|
||||
//_beforeDraw();
|
||||
|
||||
m_MateriaType = _type;
|
||||
}
|
||||
} // namespace MyGUI
|
||||
|
|
|
@ -27,13 +27,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#include "stdneb.h"
|
||||
//#include <cstring>
|
||||
#include "MyGUI_GenesisTexture.h"
|
||||
//#include "MyGUI_DataManager.h"
|
||||
//#include "MyGUI_GenesisRenderManager.h"
|
||||
//#include "MyGUI_GenesisDiagnostic.h"
|
||||
#include "MyGUI_GenesisRTTexture.h"
|
||||
|
||||
#include "resource/imageres.h"
|
||||
#include "resource/resourceserver.h"
|
||||
#include "graphicsystem/GraphicSystem.h"
|
||||
|
@ -41,13 +34,19 @@ THE SOFTWARE.
|
|||
#include "foundation/util/queue.h"
|
||||
#include "resource/resourcemanager.h"
|
||||
|
||||
#include "MyGUI_GenesisDataManager.h"
|
||||
#include "MyGUI_GenesisTexture.h"
|
||||
|
||||
#include "MyGUI_GenesisRTTexture.h"
|
||||
|
||||
|
||||
|
||||
namespace MyGUI
|
||||
{
|
||||
|
||||
using namespace Resources;
|
||||
using namespace Graphic;
|
||||
|
||||
Util::String GenesisTexture::s_resourcePath = "";
|
||||
class TexUpdate
|
||||
{
|
||||
public:
|
||||
|
@ -109,10 +108,6 @@ namespace MyGUI
|
|||
destroy();
|
||||
}
|
||||
|
||||
void GenesisTexture::SetResourcePath(const Util::String& path)
|
||||
{
|
||||
s_resourcePath = path;
|
||||
}
|
||||
const std::string& GenesisTexture::getName() const
|
||||
{
|
||||
return mName;
|
||||
|
@ -142,7 +137,13 @@ namespace MyGUI
|
|||
}
|
||||
GenesisTextureMgr::Instance()->RemoveManualTexture(this);
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
if (m_bManualCreate)
|
||||
{
|
||||
delete mRenderTarget;
|
||||
}
|
||||
}
|
||||
m_texStream = NULL;
|
||||
m_texRes = NULL;
|
||||
mRenderTarget = nullptr;
|
||||
|
@ -222,7 +223,7 @@ namespace MyGUI
|
|||
myFormat = PixelFormat::R8G8B8;
|
||||
}
|
||||
break;
|
||||
case RenderBase::PixelFormat::R8G8B8A8:
|
||||
case RenderBase::PixelFormat::A8R8G8B8:
|
||||
{
|
||||
myFormat = PixelFormat::R8G8B8A8;
|
||||
}
|
||||
|
@ -255,7 +256,7 @@ namespace MyGUI
|
|||
|
||||
else if(format == PixelFormat::R8G8B8A8)
|
||||
{
|
||||
wjFormat = RenderBase::PixelFormat::R8G8B8A8;
|
||||
wjFormat = RenderBase::PixelFormat::A8R8G8B8;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -317,6 +318,19 @@ namespace MyGUI
|
|||
m_height = _height;
|
||||
mOriginalUsage = _usage;
|
||||
setFormat(_format);
|
||||
|
||||
if (TextureUsage::RenderTarget == _usage)
|
||||
{
|
||||
createManualRenderToTexture(_width, _height, _usage, _format);
|
||||
}
|
||||
else
|
||||
{
|
||||
createManualTexture(_width, _height, _usage, _format);
|
||||
}
|
||||
}
|
||||
|
||||
void GenesisTexture::createManualTexture(int _width, int _height, TextureUsage _usage, PixelFormat _format)
|
||||
{
|
||||
RenderBase::PixelFormat::Code wj_format = FormatMyGuiToWj(_format);
|
||||
|
||||
GPtr<RenderBase::Texture> tex = RenderBase::Texture::Create();
|
||||
|
@ -371,6 +385,18 @@ namespace MyGUI
|
|||
mOriginalFormat = PixelFormat::Unknow;
|
||||
}
|
||||
}
|
||||
|
||||
void GenesisTexture::createManualRenderToTexture(int _width, int _height, TextureUsage _usage, PixelFormat _format)
|
||||
{
|
||||
RenderBase::PixelFormat::Code wj_format = FormatMyGuiToWj(_format);
|
||||
GPtr<Graphic::RenderToTexture> rtt = Graphic::RenderToTexture::Create();
|
||||
rtt->Setup(_width, _height, wj_format,
|
||||
RenderBase::RenderTarget::ClearAll, Math::float4(0.0f,0.0f,0.0f,0.f), false, 1.f, RenderBase::AntiAliasQuality::None);
|
||||
|
||||
mRenderTarget = new GenesisRTTexture(rtt);
|
||||
m_bManualCreate = true;
|
||||
}
|
||||
|
||||
GPtr<RenderBase::Texture> _BuildTextureData(const GPtr<Resources::ImageRes>& image, GPtr<IO::MemoryStream>& memStream)
|
||||
{
|
||||
n_assert(image.isvalid());
|
||||
|
@ -443,73 +469,45 @@ namespace MyGUI
|
|||
|
||||
return GPtr<RenderBase::Texture>();
|
||||
}
|
||||
void GenesisTexture::loadFromFile(const std::string& _filename)
|
||||
|
||||
void GenesisTexture::loadTextureFromFile(const std::string& _filename)
|
||||
{
|
||||
|
||||
Util::String filename = _filename.c_str();
|
||||
Util::String url = s_resourcePath + filename;
|
||||
|
||||
/*Resources::ResourceServer* resServer = Resources::ResourceServer::Instance();
|
||||
GPtr<Resource> pRes = resServer->CreateOrGetResource(url, &ImageRes::RTTI );
|
||||
n_assert( pRes.isvalid() );
|
||||
|
||||
if ( pRes->GetState() != Resource::Loaded )
|
||||
{
|
||||
bool bOK = resServer->LoadResource(pRes,false);
|
||||
if (!bOK)
|
||||
{
|
||||
m_texHandle = RenderBase::PrimitiveHandle();
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
GPtr<ImageRes> pImage = pRes.downcast<ImageRes>();
|
||||
n_assert( pImage.isvalid() );
|
||||
|
||||
//pImage->SetManuLoad(true); // 避免被卸载
|
||||
|
||||
if ( !pRes.isvalid() || !pRes->GetResourceId().IsValid() )
|
||||
{
|
||||
m_texHandle = RenderBase::PrimitiveHandle();
|
||||
return;
|
||||
}
|
||||
|
||||
m_width = pImage->GetWidth();
|
||||
m_height = pImage->GetHeight();
|
||||
mOriginalUsage = TextureUsage::Default;
|
||||
setFormat(FormatWjToMyGui(pImage->GetPixelFormat()));//mOriginalFormat =
|
||||
|
||||
const GPtr<GraphicSystem>& gs = GraphicSystem::Instance();
|
||||
n_assert(gs.isvalid());
|
||||
|
||||
GPtr<RenderBase::Texture> tex = _BuildTextureData(pImage, m_texStream);
|
||||
|
||||
if ( tex.isvalid() )
|
||||
{
|
||||
m_texHandle = gs->CreateTexture( tex );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_texHandle = RenderBase::TextureHandle();
|
||||
}
|
||||
|
||||
pRes->UnLoad();
|
||||
|
||||
m_texStream = NULL;*/
|
||||
|
||||
m_texRes = Resources::ResourceManager::Instance()->CreateTextureInfo(url, 0);
|
||||
m_texRes = Resources::ResourceManager::Instance()->CreateTextureInfo(Resources::ResourceId(_filename.c_str()), 0);
|
||||
RenderBase::TEXTURE_DESC texDesc;
|
||||
GraphicSystem::Instance()->GetTextureDesc(m_texRes->GetHandle(), texDesc);
|
||||
|
||||
m_width = texDesc.width;
|
||||
m_height = texDesc.height;
|
||||
mOriginalUsage = TextureUsage::Default;
|
||||
setFormat(FormatWjToMyGui(texDesc.pixelFormat));//mOriginalFormat =
|
||||
|
||||
|
||||
setFormat(FormatWjToMyGui(texDesc.pixelFormat));//mOriginalFormat
|
||||
}
|
||||
|
||||
void GenesisTexture::loadFromFile(const std::string& _filename)
|
||||
{
|
||||
const GenesisGuiGlobal::MediaLocations& paths = GenesisGuiGlobal::getMediaLocations();
|
||||
if (paths.size() == 1)
|
||||
{
|
||||
loadTextureFromFile(paths.front() + _filename);
|
||||
}
|
||||
else
|
||||
{
|
||||
IO::IoServer* ios = IO::IoServer::Instance();
|
||||
std::string url;
|
||||
GenesisDataManager::MediaLocations::const_iterator it = paths.begin();
|
||||
GenesisDataManager::MediaLocations::const_iterator end = paths.end();
|
||||
|
||||
while(it != end)
|
||||
{
|
||||
url = *it + _filename;
|
||||
if (ios->FileExists(IO::URI(url.c_str())))
|
||||
{
|
||||
loadTextureFromFile(url);
|
||||
return;
|
||||
}
|
||||
++it;
|
||||
}
|
||||
}
|
||||
}
|
||||
void GenesisTexture::createFromRenderTarget(IRenderTarget* rt)
|
||||
{
|
||||
mRenderTarget = rt;
|
||||
|
@ -560,7 +558,7 @@ namespace MyGUI
|
|||
IRenderTarget* GenesisTexture::getRenderTarget()
|
||||
{
|
||||
//if (mRenderTarget == nullptr)
|
||||
// mRenderTarget = new OgreRTTexture(mTexture);
|
||||
// mRenderTarget = new GenesisRTTexture(mTexture);
|
||||
|
||||
return mRenderTarget;
|
||||
}
|
||||
|
|
|
@ -921,26 +921,28 @@ namespace Particles
|
|||
mMobileTime = 0;
|
||||
Math::Color32 _color;
|
||||
Math::bbox _box;
|
||||
float halfSize = 0;
|
||||
float halfXSize = 0;
|
||||
float halfYSize = 0;
|
||||
_box.begin_extend();
|
||||
while (totalPar < quato)
|
||||
{
|
||||
mEmitter->_emit(particle,(float)mDuration*totalPar/quato);
|
||||
halfSize = 0.5f*particle->mSize.x();
|
||||
halfXSize = 0.5f*particle->mSize.x();
|
||||
halfYSize = 0.5f*particle->mSize.y();
|
||||
particleVertex[4*totalPar].mColor = particle->mColor.HexARGB();
|
||||
particleVertex[4*totalPar].mPosition = particle->mPosition;
|
||||
particleVertex[4*totalPar].mTangent.set(-halfSize,halfSize,0,0);
|
||||
particleVertex[4*totalPar].mTangent.set(-halfXSize,halfYSize,0,0);
|
||||
particleVertex[4*totalPar].mNormal = particle->mDirection;
|
||||
particleVertex[4*totalPar].mTexCoord.set(_time,particle->mTotalTimeToLive);
|
||||
|
||||
particleVertex[4*totalPar+1] = particleVertex[4*totalPar];
|
||||
particleVertex[4*totalPar+1].mTangent.set(-halfSize,-halfSize,0,1);
|
||||
particleVertex[4*totalPar+1].mTangent.set(-halfXSize,-halfYSize,0,1);
|
||||
|
||||
particleVertex[4*totalPar+2] = particleVertex[4*totalPar];
|
||||
particleVertex[4*totalPar+2].mTangent.set(halfSize,-halfSize,1,1);
|
||||
particleVertex[4*totalPar+2].mTangent.set(halfXSize,-halfYSize,1,1);
|
||||
|
||||
particleVertex[4*totalPar+3] = particleVertex[4*totalPar];
|
||||
particleVertex[4*totalPar+3].mTangent.set(halfSize,halfSize,1,0);
|
||||
particleVertex[4*totalPar+3].mTangent.set(halfXSize,halfYSize,1,0);
|
||||
|
||||
indicies[6*totalPar] = 4*totalPar;
|
||||
indicies[6*totalPar+1] = 4*totalPar + 1;
|
||||
|
|
|
@ -103,8 +103,9 @@ namespace Particles
|
|||
}
|
||||
Math::bbox bb;
|
||||
_calculateBBox(bb,GetMatrixList());
|
||||
bb.pmin -= mBoundingBox.pmin;
|
||||
bb.pmax += mBoundingBox.pmax;
|
||||
point pp = mBoundingBox.pmax - mBoundingBox.pmin;
|
||||
bb.pmin -= pp*0.5;
|
||||
bb.pmax += pp*0.5;
|
||||
const Math::matrix44& worldMat = mParentSystem->GetWorldMatrix();
|
||||
Math::matrix44 invMat = Math::matrix44::inverse(worldMat);
|
||||
bb.transform(invMat);
|
||||
|
|
|
@ -291,13 +291,9 @@ namespace Particles
|
|||
HorizontalPlane_OP op;
|
||||
op.bt = HorizontalPlane_OP::ALIGN_XZ;
|
||||
op.bat = this->GetBillBoardAlignType();
|
||||
op.parentQuaternion = Math::quaternion::identity();
|
||||
op.parentQuaternion = outquaternion;
|
||||
op.parentScale = scaleVector;
|
||||
|
||||
if (mParentSystem)
|
||||
{
|
||||
op.parentQuaternion = mParentSystem->GetDerivedRotation();
|
||||
}
|
||||
numParticle = _updateTarget_BillBoard(pool,particleVertex, indicies, op, false);
|
||||
}
|
||||
break;
|
||||
|
@ -306,13 +302,9 @@ namespace Particles
|
|||
HorizontalPlane_OP op;
|
||||
op.bt = HorizontalPlane_OP::ALIGN_YZ;
|
||||
op.bat = this->GetBillBoardAlignType();
|
||||
op.parentQuaternion = Math::quaternion::identity();
|
||||
op.parentQuaternion = outquaternion;
|
||||
op.parentScale = scaleVector;
|
||||
|
||||
if (mParentSystem)
|
||||
{
|
||||
op.parentQuaternion = mParentSystem->GetDerivedRotation();
|
||||
}
|
||||
numParticle = _updateTarget_BillBoard(pool,particleVertex, indicies, op, false);
|
||||
}
|
||||
break;
|
||||
|
@ -321,13 +313,9 @@ namespace Particles
|
|||
HorizontalPlane_OP op;
|
||||
op.bt = HorizontalPlane_OP::ALIGN_XY;
|
||||
op.bat = this->GetBillBoardAlignType();
|
||||
op.parentQuaternion = Math::quaternion::identity();
|
||||
op.parentQuaternion = outquaternion;
|
||||
op.parentScale = scaleVector;
|
||||
|
||||
if (mParentSystem)
|
||||
{
|
||||
op.parentQuaternion = mParentSystem->GetDerivedRotation();
|
||||
}
|
||||
numParticle = _updateTarget_BillBoard(pool,particleVertex, indicies, op, false);
|
||||
}
|
||||
break;
|
||||
|
|
|
@ -105,8 +105,10 @@ namespace Resources
|
|||
SkeletonRes::UnLoadImpl(void)
|
||||
{
|
||||
mSkelBones.Clear();
|
||||
mSkelNames.Clear();
|
||||
mSkelTree.Clear();
|
||||
mSkelTreeArray.Clear();
|
||||
mSkelKeyPair.Clear();
|
||||
}
|
||||
//------------------------------------------------------------------------
|
||||
bool
|
||||
|
|
|
@ -232,7 +232,7 @@ namespace Sprite
|
|||
#ifdef __SPRITE_CHECK__
|
||||
mAnimationChangeCount = clip->getChangeCount();
|
||||
#endif
|
||||
mDirty = true;
|
||||
updateAnimation();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -129,6 +129,10 @@ namespace Vegetation
|
|||
pGMP->SetMatrixParam(eGShaderMatMVP, mvp);
|
||||
pGMP->SetMatrixParam(eGShaderMatM, _mat);
|
||||
|
||||
Math::matrix44 mv = Math::matrix44::multiply(pCamera->GetViewTransform(), _mat);
|
||||
pGMP->SetMatrixParam(eGShaderMatMV, mv);
|
||||
|
||||
|
||||
Math::matrix44 Inverse, InvTranspose;
|
||||
Inverse = Math::matrix44::inverse(_mat);
|
||||
InvTranspose = Math::matrix44::transpose(Inverse);
|
||||
|
@ -205,6 +209,9 @@ namespace Vegetation
|
|||
pGMP->SetMatrixParam(eGShaderMatMVP, mvp);
|
||||
pGMP->SetMatrixParam(eGShaderMatM, _mat);
|
||||
|
||||
Math::matrix44 mv = Math::matrix44::multiply(pCamera->GetViewTransform(), _mat);
|
||||
pGMP->SetMatrixParam(eGShaderMatMV, mv);
|
||||
|
||||
_Render(renderable, passType,
|
||||
mOwner->GetPrimHandle(),
|
||||
renderable->GetFirstVertix(),
|
||||
|
@ -331,7 +338,7 @@ namespace Vegetation
|
|||
pMarcro->TurnOnLight();
|
||||
}
|
||||
|
||||
if (m_pRenderScene->GetEnvironment()->fogColor.w() > 0.0f)
|
||||
if (m_pRenderScene->GetEnvironment() && m_pRenderScene->GetEnvironment()->fogColor.w() > 0.0f)
|
||||
{
|
||||
pMarcro->TurnOn(ShaderProgramCompiler::ShaderMarcro::m_sFog);
|
||||
}
|
||||
|
|
|
@ -63,7 +63,7 @@ VisQuery::Run()
|
|||
return;
|
||||
}
|
||||
|
||||
#ifdef __WIN32__
|
||||
#if __THREAD_JOB__
|
||||
|
||||
this->mJobPort = Jobs::JobPort::Create();
|
||||
this->mJobPort->Setup();
|
||||
|
@ -90,7 +90,7 @@ VisQuery::Run()
|
|||
if (newJob.isvalid())
|
||||
{
|
||||
mJobs.Append( newJob );
|
||||
#ifdef __WIN32__
|
||||
#if __THREAD_JOB__
|
||||
this->mJobPort->PushJob( newJob );
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -209,7 +209,7 @@ VisServer::PerformVisQuery(const GPtr<ObserverContext>& observer ,
|
|||
{
|
||||
GPtr<VisQuery> pQuery = CreateVisQuery( observer, systemIndex );
|
||||
pQuery->Run();
|
||||
#ifdef __WIN32__
|
||||
#if __THREAD_JOB__
|
||||
pQuery->WaitForFinished();
|
||||
#endif
|
||||
pQuery->EndQuery();
|
||||
|
|
|
@ -223,7 +223,7 @@ VisQuadtree::CreateVisJob(const GPtr<ObserverContext>& observer, Util::Array<GPt
|
|||
// create new job
|
||||
GPtr<Jobs::Job> visibilityJob = Jobs::Job::Create();
|
||||
|
||||
#ifdef __WIN32__
|
||||
#if __THREAD_JOB__//
|
||||
// input data for job
|
||||
// function
|
||||
JobFuncDesc jobFunction(VisCellJobFunc);
|
||||
|
|
|
@ -31,6 +31,7 @@ THE SOFTWARE.
|
|||
#include "util/quadtree.h"
|
||||
#include "jobs/job.h"
|
||||
|
||||
#define __THREAD_JOB__ 0 //
|
||||
//------------------------------------------------------------------------------
|
||||
namespace Vis
|
||||
{
|
||||
|
|
|
@ -83,7 +83,9 @@ void GameIap::onStoreKitPurchaseSucceed(const Util::String & productIdentifier,
|
|||
// 拿着sk返回的receipt再去appStore做验证,但我们的iap是build-in,而不是server-base,因此没必要这样做
|
||||
*/
|
||||
|
||||
ScriptIAPInstance::Instance()->onStoreKitPurchaseSucceed(productIdentifier,transactionIdentifier,transactionReceipt);
|
||||
|
||||
NALSystem::ALSystem::getInstance()->storeKitFinishTransaction(transactionIdentifier);
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -41,6 +41,7 @@ SET ( APPFRAMEWORK_HEADER_FILES
|
|||
appframework/manager.h
|
||||
appframework/serialization.h
|
||||
appframework/scene.h
|
||||
appframework/simplecamera.h
|
||||
appframework/statehandler.h
|
||||
appframework/profiletool.h
|
||||
)
|
||||
|
@ -62,6 +63,7 @@ SET ( APPFRAMEWORK_SOURCE_FILES
|
|||
appframework/manager.cc
|
||||
appframework/serialization.cc
|
||||
appframework/scene.cc
|
||||
appframework/simplecamera.cc
|
||||
appframework/sceneserialization.cc
|
||||
appframework/statehandler.cc
|
||||
appframework/profiletool.cc
|
||||
|
@ -247,6 +249,7 @@ SET ( VEGETATION_SOURCE_FILES
|
|||
SET ( SCRIPTFEATURE_HEADER_FILES
|
||||
scriptfeature/mono_script_manager.h
|
||||
scriptfeature/mono_script.h
|
||||
scriptfeature/script_hook.h
|
||||
scriptfeature/mono_icall_registration.h
|
||||
scriptfeature/script_general_manager.h
|
||||
scriptfeature/script_message_regist.h
|
||||
|
@ -267,6 +270,7 @@ SET ( SCRIPTFEATURE_SOURCE_FILES
|
|||
scriptfeature/mono_icall_registration.cc
|
||||
scriptfeature/script_general_manager.cc
|
||||
scriptfeature/script_instance.cc
|
||||
scriptfeature/script_hook.cc
|
||||
scriptfeature/script_message.cc
|
||||
scriptfeature/script_message_regist.cc
|
||||
scriptfeature/script_feature.cc
|
||||
|
@ -395,6 +399,10 @@ SET ( GUIFEATURE_FILES
|
|||
guifeature/guievent.cc
|
||||
guifeature/FontFeature.h
|
||||
guifeature/FontFeature.cc
|
||||
guifeature/guiscene.h
|
||||
guifeature/guiscene.cc
|
||||
guifeature/guirenderobject.h
|
||||
guifeature/guirenderobject.cc
|
||||
|
||||
)
|
||||
SET ( JNI_FILES
|
||||
|
@ -713,23 +721,22 @@ INCLUDE_DIRECTORIES(
|
|||
${CMAKE_SOURCE_DIR}/depends
|
||||
${CMAKE_SOURCE_DIR}/depends/boostWraper
|
||||
${CMAKE_SOURCE_DIR}/depends/freetype/include
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/cooking
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/foundation
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/common
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/characterkinematic
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/cloth
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/extensions
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/geometry
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/gpu
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/particles
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/physxprofilesdk
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/physxvisualdebuggersdk
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/pvd
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/pxtask
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/RepX
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/RepXUpgrader
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/linux/vehicle
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/cooking
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/foundation
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/common
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/characterkinematic
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/cloth
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/extensions
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/geometry
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/particles
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/physxprofilesdk
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/physxvisualdebuggersdk
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/pvd
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/pxtask
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/RepX
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/RepXUpgrader
|
||||
${CMAKE_SOURCE_DIR}/extincludes/physX3/android/vehicle
|
||||
|
||||
# should remove later
|
||||
${CMAKE_SOURCE_DIR}/graphicsystem
|
||||
|
|
|
@ -40,7 +40,7 @@ THE SOFTWARE.
|
|||
#include "scriptfeature/inc/script_component.h"
|
||||
#include "graphicfeature/components/rendercomponent.h"
|
||||
#include "graphicfeature/components/spriterendercomponent.h"
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "physXfeature/PhysicsBodyComponent.h"
|
||||
#endif
|
||||
|
||||
|
@ -167,7 +167,7 @@ void Actor::SetLayerID(LayerID id)
|
|||
n_assert(0 <= id);
|
||||
mLayerID = id;
|
||||
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
//从脚本设置的话,需要更新物理形状的groupId
|
||||
GPtr<PhysicsBodyComponent> com = FindComponent<PhysicsBodyComponent>();
|
||||
if(com.isvalid() && com->GetEntity()->IsValid())
|
||||
|
@ -1500,9 +1500,9 @@ void Actor::CopyFrom( const GPtr<Actor>& pSource,const ActorPropertySet& actorPr
|
|||
void Actor::_CopyFrom_MustProperty( const GPtr<Actor>& pSource, bool needRecurVFL)
|
||||
{
|
||||
//更新 新加入的Component的显示属性
|
||||
SetVisible(pSource->GetVisible(), needRecurVFL);
|
||||
SetVisible(pSource->GetVisible(), false);
|
||||
#ifdef __GENESIS_EDITOR__
|
||||
SetFrozen(pSource->GetFrozen(), needRecurVFL);
|
||||
SetFrozen(pSource->GetFrozen(), false);
|
||||
#endif
|
||||
SetLocalBoundingBox(pSource->GetLocalBoundingBox());
|
||||
SetTemplateName( pSource->GetTemplateName() );
|
||||
|
@ -1688,6 +1688,21 @@ Actor::FindChildIndex(FastId id) const
|
|||
return InvalidIndex;
|
||||
}
|
||||
//------------------------------------------------------------------------
|
||||
IndexT
|
||||
Actor::FindChildIndex(const Util::String& name) const
|
||||
{
|
||||
// @todo may be need optimize, eg. Binary Search
|
||||
SizeT count = mChildren.Size();
|
||||
for ( IndexT index = 0; index < count; ++index )
|
||||
{
|
||||
if ( mChildren[index]->GetName() == name )
|
||||
{
|
||||
return index;
|
||||
}
|
||||
}
|
||||
return InvalidIndex;
|
||||
}
|
||||
//------------------------------------------------------------------------
|
||||
const GPtr<Actor>&
|
||||
Actor::FindChild(FastId id, bool includeGrandson) const
|
||||
{
|
||||
|
|
|
@ -222,6 +222,8 @@ namespace App
|
|||
// find child actor index in child list
|
||||
IndexT FindChildIndex(FastId id) const;
|
||||
|
||||
IndexT FindChildIndex(const Util::String& name) const;
|
||||
|
||||
// add child. If childActor Has Parent, Failed, Need Remove Form Other Parent First. Please Use SetParent
|
||||
void AddChild(GPtr<Actor>& childActor );
|
||||
|
||||
|
@ -940,7 +942,7 @@ namespace App
|
|||
|
||||
|
||||
|
||||
|
||||
#include "component_force_compile.cc"
|
||||
|
||||
|
||||
#endif // __actor_H__
|
||||
|
|
|
@ -369,7 +369,7 @@ namespace App
|
|||
pTemplate->CopyFrom(pSource,actorPropertySet, true, false, false);
|
||||
|
||||
#ifdef __GENESIS_EDITOR__
|
||||
pTemplate->SetFrozen(false,false);
|
||||
pTemplate->SetFrozen(false, true);
|
||||
#endif
|
||||
|
||||
// template must deactive and link false
|
||||
|
@ -449,8 +449,6 @@ namespace App
|
|||
pTemplate->SetName(templateActorName);
|
||||
|
||||
|
||||
|
||||
|
||||
if (WriteTemplateFile(templateName,pTemplate,iFileType))
|
||||
{
|
||||
UpdateTemplateCache(templateName,pTemplate,iFileType);
|
||||
|
@ -581,7 +579,9 @@ namespace App
|
|||
// cache
|
||||
IndexT index = mTemplateActors.FindIndex( actorTemplateName );
|
||||
if ( index == InvalidIndex)
|
||||
{
|
||||
mTemplateActors.Add(actorTemplateName, templateInfo);
|
||||
}
|
||||
else
|
||||
mTemplateActors.ValueAtIndex( index ) = templateInfo;
|
||||
|
||||
|
@ -783,7 +783,7 @@ namespace App
|
|||
}
|
||||
}
|
||||
//------------------------------------------------------------------------
|
||||
void ActorManager::DeactiveActors( uint layerMark )
|
||||
void ActorManager::DeactiveActors(Graphic::IRenderScene* renderScene, uint layerMark)
|
||||
{
|
||||
ActiveActorContainer copys = mActiveActors;
|
||||
ActiveActorContainer::Iterator it = copys.Begin();
|
||||
|
@ -793,7 +793,7 @@ namespace App
|
|||
Actor* actor = it->Value();
|
||||
LayerID layerID = actor->GetLayerID();
|
||||
uint mark = BIT_FLAG(layerID);
|
||||
if (mark & layerMark)
|
||||
if (mark & layerMark && renderScene == actor->GetRenderScene())
|
||||
{
|
||||
actor->Deactive();
|
||||
}
|
||||
|
|
|
@ -111,7 +111,7 @@ namespace App
|
|||
|
||||
void DeactiveActor( GPtr<Actor>& pActor, bool forceActiveControlofChild );// = false
|
||||
|
||||
void DeactiveActors( uint layerMark );
|
||||
void DeactiveActors(Graphic::IRenderScene* renderScene, uint layerMark);
|
||||
|
||||
//---------------------------actor template manage ---------------------------------------------
|
||||
/**
|
||||
|
|
|
@ -145,7 +145,7 @@ protected:
|
|||
/// Setup all internal transform when BeginFrame
|
||||
virtual void _SetInternalTransform();
|
||||
|
||||
void Component_force_compiler();
|
||||
// void Component_force_compiler();
|
||||
|
||||
protected:
|
||||
|
||||
|
|
|
@ -48,13 +48,13 @@ namespace App
|
|||
mActor->ThrowMessageToScript<T>(name, pair);
|
||||
}
|
||||
}
|
||||
void Component::Component_force_compiler()
|
||||
{
|
||||
return; // forbid to call me
|
||||
|
||||
//GPtr<PhysicsShapeComponent> pTemp;
|
||||
//SendMessageToScript<PhysicsShapeComponent>("", pTemp,pTemp);
|
||||
}
|
||||
// void Component::Component_force_compiler()
|
||||
// {
|
||||
// return; // forbid to call me
|
||||
//
|
||||
// //GPtr<PhysicsShapeComponent> pTemp;
|
||||
// //SendMessageToScript<PhysicsShapeComponent>("", pTemp,pTemp);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -48,8 +48,11 @@ namespace App
|
|||
class SoundFeature;
|
||||
class ScriptFeature;
|
||||
class GUIServer;
|
||||
#ifndef __OSX__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
class PhysicsFeature;
|
||||
#endif
|
||||
|
||||
#ifndef __OSX__
|
||||
class NetworkFeature;
|
||||
#endif
|
||||
class FontFeature;
|
||||
|
@ -74,8 +77,10 @@ namespace App
|
|||
typedef GPtr<SoundFeature> TSoundFeaturePtr;
|
||||
typedef GPtr<FontFeature> TFontFeaturePtr;
|
||||
typedef GPtr<ALSystemFeature> TALSystemFeaturePtr;
|
||||
#ifndef __OSX__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
typedef GPtr<PhysicsFeature> TPhysicsFeaturePtr;
|
||||
#endif
|
||||
#ifndef __OSX__
|
||||
typedef GPtr<NetworkFeature> TNetworkFeaturePtr;
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -102,6 +102,7 @@ GameApplication::GameApplication()
|
|||
, m_pShaderFactory(NULL)
|
||||
, mOpenSceneDirty(false)
|
||||
, mCloseSceneDirty(false)
|
||||
, mCurSceneState(Unknown)
|
||||
{
|
||||
__ConstructThreadSingleton;
|
||||
_RegisterDynamicClass();
|
||||
|
@ -223,6 +224,7 @@ GameApplication::Open()
|
|||
// create collision server
|
||||
mCollisonServer = Graphic::CollisionModelServer::Create();
|
||||
|
||||
mGuiServer = App::GUIServer::Create();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -269,13 +271,14 @@ GameApplication::Close()
|
|||
exitGuiScript();
|
||||
}
|
||||
|
||||
|
||||
#ifndef __SCRIPT_COMMIT__
|
||||
App::Utility_ScriptRootExit();
|
||||
App::ShutDownScriptSystem();
|
||||
#endif
|
||||
|
||||
exitGui();
|
||||
mGuiServer = NULL;
|
||||
|
||||
this->cleanupGameFeatures();
|
||||
this->mGameServer->Close();
|
||||
|
||||
|
@ -341,7 +344,7 @@ void GameApplication::Quit()
|
|||
mQuit = true;
|
||||
}
|
||||
|
||||
bool GameApplication::IsQuit()
|
||||
bool GameApplication::IsQuit() const
|
||||
{
|
||||
return mQuit;
|
||||
}
|
||||
|
@ -380,6 +383,10 @@ GameApplication::Run()
|
|||
}
|
||||
this->mCoreServer->Trigger();
|
||||
mGameServer->OnFrameWithoutGraphics();
|
||||
if (mGuiServer)
|
||||
{
|
||||
mGuiServer->OnFrame();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case DS_Reset:
|
||||
|
@ -392,6 +399,10 @@ GameApplication::Run()
|
|||
{
|
||||
this->mCoreServer->Trigger();
|
||||
mGameServer->OnFrame();
|
||||
if (mGuiServer)
|
||||
{
|
||||
mGuiServer->OnFrame();
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
@ -410,13 +421,15 @@ GameApplication::Run()
|
|||
bool GameApplication::OpenScene(const Util::String& sceneName, bool force)
|
||||
{
|
||||
n_assert(IsOpen());
|
||||
mOpenSceneName = sceneName;
|
||||
if (force)
|
||||
{
|
||||
return openScene(sceneName);
|
||||
mCurSceneState = Loaded;
|
||||
return openScene(mOpenSceneName);
|
||||
}
|
||||
else
|
||||
{
|
||||
mOpenSceneName = sceneName;
|
||||
mCurSceneState = Loading;
|
||||
mOpenSceneDirty = true;
|
||||
return true;
|
||||
}
|
||||
|
@ -424,6 +437,7 @@ bool GameApplication::OpenScene(const Util::String& sceneName, bool force)
|
|||
|
||||
bool GameApplication::openScene(const Util::String& sceneName)
|
||||
{
|
||||
mCurSceneState = Loaded;
|
||||
App::SceneScheduleManager* pSceneSchedule = App::SceneScheduleManager::Instance();
|
||||
return pSceneSchedule->OpenScene(sceneName, false);
|
||||
}
|
||||
|
@ -477,9 +491,30 @@ const GPtr<Scene>& GameApplication::GetCurrentScene() const
|
|||
return pSceneSchedule->GetMainScene();
|
||||
}
|
||||
|
||||
int GameApplication::GetCurrentSceneState()
|
||||
{
|
||||
return mCurSceneState;
|
||||
}
|
||||
|
||||
int GameApplication::GetSceneState(const Util::String& sceneName)
|
||||
{
|
||||
if (sceneName == mOpenSceneName)
|
||||
{
|
||||
return mCurSceneState;
|
||||
}
|
||||
App::SceneScheduleManager* pSceneSchedule = App::SceneScheduleManager::Instance();
|
||||
GPtr<Scene> scene = pSceneSchedule->GetScene(sceneName);
|
||||
if (scene.isvalid())
|
||||
{
|
||||
return Loaded;
|
||||
}
|
||||
return Unknown;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
bool GameApplication::closeScene(const Util::String& sceneName)
|
||||
{
|
||||
mCurSceneState = Closed;
|
||||
App::SceneScheduleManager* pSceneSchedule = App::SceneScheduleManager::Instance();
|
||||
return pSceneSchedule->CloseScene(sceneName);
|
||||
}
|
||||
|
@ -489,10 +524,12 @@ bool GameApplication::CloseScene( const Util::String& sceneName, bool force )
|
|||
n_assert(IsOpen());
|
||||
if (force)
|
||||
{
|
||||
mCurSceneState = Closed;
|
||||
return closeScene(sceneName);
|
||||
}
|
||||
else
|
||||
{
|
||||
mCurSceneState = Closing;
|
||||
mCloseSceneName = sceneName;
|
||||
mCloseSceneDirty = true;
|
||||
return true;
|
||||
|
@ -503,6 +540,7 @@ bool GameApplication::CloseScene( const Util::String& sceneName, bool force )
|
|||
void GameApplication::CloseAllScenes()
|
||||
{
|
||||
n_assert(IsOpen());
|
||||
mCurSceneState = Closed;
|
||||
App::SceneScheduleManager* pSceneSchedule = App::SceneScheduleManager::Instance();
|
||||
pSceneSchedule->CloseAllScenes();
|
||||
}
|
||||
|
@ -548,7 +586,7 @@ GameApplication::setupGameFeatures()
|
|||
this->mParticleFeature = App::ParticleFeature::Create();
|
||||
this->mVegeFeature = App::VegetationFeature::Create();
|
||||
this->mResourceFeature = App::ResourceFeature::Create();
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
this->mPhysicsFeature = App::PhysicsFeature::Create();
|
||||
#endif
|
||||
this->mAnimationFeature = App::AnimationFeature::Create();
|
||||
|
@ -602,7 +640,7 @@ GameApplication::setupGameFeatures()
|
|||
mGameServer->AttachGameFeature(this->mParticleFeature.upcast<App::Feature>());
|
||||
mGameServer->AttachGameFeature(this->mVegeFeature.upcast<App::Feature>());
|
||||
mGameServer->AttachGameFeature(this->mResourceFeature.upcast<App::Feature>());
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
mGameServer->AttachGameFeature(this->mPhysicsFeature.upcast<App::Feature>());
|
||||
#endif
|
||||
mGameServer->AttachGameFeature(this->mAnimationFeature.upcast<App::Feature>());
|
||||
|
@ -628,21 +666,31 @@ GameApplication::setupGameFeatures()
|
|||
void
|
||||
GameApplication::initGui()
|
||||
{
|
||||
|
||||
mGuiServer = App::GUIServer::Create();
|
||||
if (!mGuiServer->IsOpen())
|
||||
{
|
||||
mGuiServer->SetCoreFile(GUI_ROOT_CONFIG);
|
||||
mGuiServer->SetEngineDir(mEngineDir);
|
||||
mGuiServer->Open();
|
||||
Util::String coreFile = Util::String(GUI_DEFAULT_LOCATION) + Util::String(GUI_ROOT_CONFIG);
|
||||
if(mIoServer->FileExists(Util::StringAtom(coreFile)))
|
||||
{
|
||||
mGuiServer->SetLogDir(mEngineDir);
|
||||
mGuiServer->AddMediaLocaltion(GUI_DEFAULT_LOCATION);
|
||||
mGuiServer->Open();
|
||||
}
|
||||
}
|
||||
if (mGuiServer->IsOpen())
|
||||
{
|
||||
mGuiInputHandler = Input::GuiInputHandler::Create();
|
||||
n_assert(mGuiInputHandler);
|
||||
mInputFeature->GetInputServer()->AttachInputHandler(Input::InputPriority::Gui, mGuiInputHandler.upcast<Input::InputHandler>());
|
||||
}
|
||||
}
|
||||
|
||||
void GameApplication::exitGui()
|
||||
{
|
||||
mInputFeature->GetInputServer()->RemoveInputHandler(mGuiInputHandler.upcast<Input::InputHandler>());
|
||||
mGuiInputHandler = NULL;
|
||||
if (this->mGuiServer)
|
||||
{
|
||||
this->mGuiServer->Close();
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -665,20 +713,11 @@ void GameApplication::exitGuiScript()
|
|||
{
|
||||
if (this->mGuiServer && this->mGuiServer->IsOpen())
|
||||
{
|
||||
mInputFeature->GetInputServer()->RemoveInputHandler(mGuiInputHandler.upcast<Input::InputHandler>());
|
||||
mGuiInputHandler = NULL;
|
||||
this->mGuiServer->ExitGuiScript();
|
||||
}
|
||||
}
|
||||
|
||||
void GameApplication::exitGui()
|
||||
{
|
||||
if (this->mGuiServer)
|
||||
{
|
||||
this->mGuiServer->Close();
|
||||
this->mGuiServer = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
|
@ -704,7 +743,7 @@ GameApplication::cleanupGameFeatures()
|
|||
this->mParticleFeature = 0;
|
||||
this->mVegeFeature = 0;
|
||||
this->mResourceFeature = 0;
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
this->mPhysicsFeature = 0;
|
||||
#endif
|
||||
this->mAnimationFeature = 0;
|
||||
|
|
|
@ -76,6 +76,15 @@ class GameApplication : public Application
|
|||
public:
|
||||
typedef Delegates::delegates::CDelegate1<const Application&> EventHandle_Exit;//CDelegate1
|
||||
|
||||
enum SceneState
|
||||
{
|
||||
Loading = 0,
|
||||
Loaded = 1,
|
||||
Closing = 2,
|
||||
Closed = 3,
|
||||
Unknown = 4,
|
||||
};
|
||||
|
||||
/// constructor
|
||||
GameApplication();
|
||||
/// destructor
|
||||
|
@ -93,11 +102,14 @@ public:
|
|||
|
||||
virtual void Quit();
|
||||
|
||||
virtual bool IsQuit();
|
||||
/// open a scence
|
||||
virtual bool IsQuit() const;
|
||||
/// open a scene
|
||||
virtual bool OpenScene(const Util::String& sceneName, bool force = true);
|
||||
/// close a scence
|
||||
/// close a scene
|
||||
virtual bool CloseScene(const Util::String& sceneName, bool force = true);
|
||||
/// check the state of a scene
|
||||
virtual int GetCurrentSceneState();
|
||||
virtual int GetSceneState(const Util::String& sceneName);
|
||||
|
||||
/// called when the game stopped
|
||||
virtual void OnStopped();
|
||||
|
@ -138,6 +150,8 @@ public:
|
|||
unsigned int GetGameHeight();
|
||||
const GPtr<Input::InputSource>& GetInputSource() const;
|
||||
|
||||
void* GetWndHandle() const;
|
||||
|
||||
EventHandle_Exit eventExit;
|
||||
|
||||
void SetDeviceLost();
|
||||
|
@ -169,18 +183,18 @@ protected:
|
|||
|
||||
virtual void setupProjectAssigns();
|
||||
|
||||
virtual void initGui();
|
||||
|
||||
virtual void exitGui();
|
||||
|
||||
virtual void initGuiScript();
|
||||
|
||||
virtual void exitGuiScript();
|
||||
|
||||
void setupSciptSystem();
|
||||
|
||||
void scriptRootLoad();
|
||||
|
||||
void initGui();
|
||||
|
||||
void initGuiScript();
|
||||
|
||||
void exitGuiScript();
|
||||
|
||||
void exitGui();
|
||||
|
||||
bool openScene(const Util::String& sceneName);
|
||||
bool closeScene(const Util::String& sceneName);
|
||||
/// loading scene logo
|
||||
|
@ -226,7 +240,7 @@ protected:
|
|||
TFontFeaturePtr mFontFeature;
|
||||
GPtr<GUIServer> mGuiServer;
|
||||
TSoundFeaturePtr mSoundFeature;
|
||||
#ifndef __OSX__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
//TNetworkFeaturePtr mNetworkFeature;
|
||||
TPhysicsFeaturePtr mPhysicsFeature;
|
||||
#endif
|
||||
|
@ -270,6 +284,8 @@ protected:
|
|||
bool mCloseSceneDirty;
|
||||
void* mWinHandle;
|
||||
|
||||
SceneState mCurSceneState;
|
||||
|
||||
IO::AssignRegistry* mAssignRegistry;
|
||||
|
||||
DeviceState mDeviceState;
|
||||
|
@ -381,6 +397,12 @@ inline const Util::String& GameApplication::GetResourceBaseDir() const
|
|||
{
|
||||
return mResourceBaseDir;
|
||||
}
|
||||
|
||||
inline void* GameApplication::GetWndHandle() const
|
||||
{
|
||||
return mWinHandle;
|
||||
}
|
||||
|
||||
#if __ANDROID__
|
||||
inline void GameApplication::SetNeedReadAPK(bool need)
|
||||
{
|
||||
|
|
|
@ -124,7 +124,7 @@ GameServer::Close()
|
|||
mGameFeatures["Script"] = NULL;
|
||||
#endif
|
||||
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
mGameFeatures["Physics"] = NULL;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -56,6 +56,19 @@ namespace App
|
|||
return mScene->GetRenderScene();
|
||||
}
|
||||
|
||||
SceneEnvironment::SceneEnvironment()
|
||||
:graivty(0.0f,-9.81f,0.0f)
|
||||
,skinWidth(0.025f)
|
||||
,bounce(0.0f)
|
||||
,sleepVel(0.5f)
|
||||
,sleepAngular(0.5f)
|
||||
,maxAngular(7.0f)
|
||||
,defaultMat("")
|
||||
{
|
||||
layerIDArray.Resize(32,0xffffffff);
|
||||
}
|
||||
|
||||
|
||||
__ImplementClass(App::Scene, 'SCEN' ,Core::RefCounted);
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
|
@ -99,7 +112,7 @@ namespace App
|
|||
{
|
||||
GetRenderScene()->SetEnvironment(&mEnvironment);
|
||||
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
if(apply)
|
||||
{
|
||||
PhysicsServer::Instance()->SetGravity(mEnvironment.graivty);
|
||||
|
|
|
@ -53,13 +53,24 @@ namespace App
|
|||
private:
|
||||
Scene* mScene;
|
||||
};
|
||||
|
||||
struct SceneEnvironment : public Graphic::RenderScene::Environment
|
||||
{
|
||||
Math::float3 graivty;
|
||||
float skinWidth;
|
||||
float bounce;
|
||||
float sleepVel;
|
||||
float sleepAngular;
|
||||
float maxAngular;
|
||||
Util::String defaultMat;
|
||||
Util::Array<uint> layerIDArray;
|
||||
SceneEnvironment();
|
||||
};
|
||||
class Scene : public Core::RefCounted, public App::ISerialization
|
||||
{
|
||||
__DeclareClass(Scene);
|
||||
__ScriptBind
|
||||
public:
|
||||
typedef Graphic::RenderScene::Environment Environment;
|
||||
|
||||
/// constructor
|
||||
Scene();
|
||||
/// destructor
|
||||
|
@ -69,9 +80,9 @@ namespace App
|
|||
|
||||
Graphic::RenderScene* GetRenderScene() const;
|
||||
|
||||
Environment& GetEnvironment();
|
||||
SceneEnvironment& GetEnvironment();
|
||||
|
||||
const Environment& GetEnvironment() const;
|
||||
const SceneEnvironment& GetEnvironment() const;
|
||||
|
||||
bool IsModified(void) const;
|
||||
|
||||
|
@ -163,7 +174,7 @@ namespace App
|
|||
GPtr<RootActor> mRoot;
|
||||
Graphic::RenderScene* mRenderScene;
|
||||
|
||||
Graphic::RenderScene::Environment mEnvironment;
|
||||
SceneEnvironment mEnvironment;
|
||||
|
||||
friend class SceneSerialization;
|
||||
friend class ActorManager;
|
||||
|
@ -204,7 +215,7 @@ namespace App
|
|||
|
||||
//------------------------------------------------------------------------
|
||||
inline
|
||||
const Scene::Environment&
|
||||
const SceneEnvironment&
|
||||
Scene::GetEnvironment() const
|
||||
{
|
||||
return mEnvironment;
|
||||
|
@ -212,7 +223,7 @@ namespace App
|
|||
|
||||
//------------------------------------------------------------------------
|
||||
inline
|
||||
Scene::Environment&
|
||||
SceneEnvironment&
|
||||
Scene::GetEnvironment()
|
||||
{
|
||||
return mEnvironment;
|
||||
|
|
|
@ -252,7 +252,7 @@ namespace App
|
|||
}
|
||||
else
|
||||
{
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
|
||||
PhysicsServer::Instance()->SetAllCollisionMaskMatrix( layerIDArray );
|
||||
#endif
|
||||
|
@ -442,14 +442,14 @@ namespace App
|
|||
|
||||
// environment shader param
|
||||
{
|
||||
const Scene::Environment& environment = pScene->GetEnvironment();
|
||||
const SceneEnvironment& environment = pScene->GetEnvironment();
|
||||
pSerialize->SerializeFloat4(s_GShaderVecAmbientColor, environment.ambientColor);
|
||||
pSerialize->SerializeFloat4(s_GShaderVecFogColor, environment.fogColor);
|
||||
pSerialize->SerializeFloat4(s_GShaderVecFogParam, environment.fogParam);
|
||||
pSerialize->SerializeFloat4(s_SoftShadowParam, environment.softShadowParam);
|
||||
pSerialize->SerializeFloat4(s_ShadowStrength, environment.shadowStrength);
|
||||
}
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
// phyx layer filter
|
||||
{
|
||||
Util::Array<uint> layerIDArray = PhysicsServer::Instance()->GetAllCollisionMask();
|
||||
|
@ -518,14 +518,6 @@ namespace App
|
|||
}
|
||||
}
|
||||
|
||||
//// 没找到合适的地方,先放这儿了
|
||||
/*GPtr<Graphic::MaterialInstanceManager>& manager = GraphicObjectManager::Instance()->GetMaterialInstanceManager();
|
||||
if ( manager )
|
||||
{
|
||||
manager->SaveMaterial();
|
||||
}*/
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
50
Engine/app/appframework/simplecamera.cc
Normal file
50
Engine/app/appframework/simplecamera.cc
Normal file
|
@ -0,0 +1,50 @@
|
|||
/****************************************************************************
|
||||
Copyright (c) 2011-2013,WebJet Business Division,CYOU
|
||||
|
||||
http://www.genesis-3d.com.cn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#include "stdneb.h"
|
||||
#include "basegamefeature/managers/sceneschedulemanager.h"
|
||||
#include "appframework/simplecamera.h"
|
||||
|
||||
namespace App
|
||||
{
|
||||
|
||||
__ImplementClass(App::SimpleCamera, 'SPCA', Graphic::Camera);
|
||||
|
||||
|
||||
SimpleCamera::SimpleCamera()
|
||||
{
|
||||
Super::SetRenderScene( SceneScheduleManager::Instance()->_GetMainRenderScene());
|
||||
Super::SetCameraOrder(Graphic::eCO_Main);
|
||||
Super::SetUseCallBack(false);
|
||||
Super::SetRenderDepth(false);
|
||||
Super::SetRenderLightLitMap(false);
|
||||
Super::SetRenderDepth(false);
|
||||
Super::SetRenderSort((uint)Graphic::Camera::SortRTT);
|
||||
}
|
||||
|
||||
SimpleCamera::~SimpleCamera()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
49
Engine/app/appframework/simplecamera.h
Normal file
49
Engine/app/appframework/simplecamera.h
Normal file
|
@ -0,0 +1,49 @@
|
|||
/****************************************************************************
|
||||
Copyright (c) 2011-2013,WebJet Business Division,CYOU
|
||||
|
||||
http://www.genesis-3d.com.cn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#ifndef __simplecamera_H__
|
||||
#define __simplecamera_H__
|
||||
|
||||
#include "graphicsystem/Camera/Camera.h"
|
||||
|
||||
|
||||
namespace App
|
||||
{
|
||||
|
||||
class SimpleCamera : public Graphic::Camera
|
||||
{
|
||||
__DeclareSubClass(SimpleCamera, Graphic::Camera);
|
||||
__ScriptBind
|
||||
public:
|
||||
typedef Graphic::RenderScene::Environment Environment;
|
||||
/// constructor
|
||||
SimpleCamera();
|
||||
~SimpleCamera();
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endif // __simplecamera_H__
|
||||
|
|
@ -189,16 +189,17 @@ namespace App
|
|||
}
|
||||
}
|
||||
|
||||
if (!privateScene)
|
||||
if (privateScene)
|
||||
{
|
||||
|
||||
scene->_ApplyEnvironment();
|
||||
}
|
||||
else
|
||||
{
|
||||
_SetMainScene(scene->GetName());
|
||||
scene->_ApplyEnvironment(true);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
scene->_ApplyEnvironment();
|
||||
}
|
||||
}
|
||||
#ifdef __PROFILER_IO__
|
||||
PROFILER_IO_TICKEND(tickBegin,delta);
|
||||
|
|
|
@ -1286,6 +1286,12 @@ namespace App
|
|||
|
||||
if (findAnim != InvalidIndex)
|
||||
{
|
||||
if(layer < 0)
|
||||
{
|
||||
n_warning("Invalid layer, layer must be equal or greater than 0.\n");
|
||||
return;
|
||||
}
|
||||
|
||||
AnimResParam& animParam = m_AnimInfos.animMap[findAnim];
|
||||
|
||||
if (animParam.animRes.isvalid() && animParam.animRes->GetState() == Resource::Loaded)
|
||||
|
|
|
@ -446,7 +446,7 @@ inline
|
|||
bool
|
||||
CameraComponent::GetRenderShadowMap() const
|
||||
{
|
||||
return m_camera->HasLightLitMap();
|
||||
return m_camera->IsRenderLightLitMap();
|
||||
}
|
||||
|
||||
inline
|
||||
|
|
|
@ -383,10 +383,10 @@ LightComponent::_SetupGlobalLightFrustum_NoCascade()
|
|||
}
|
||||
|
||||
GlobalMaterialParam* pGMP = Material::GetGlobalMaterialParams();
|
||||
pGMP->SetVectorParam(eGShaderVecLightCameraFrustumIntervalEnd,float4(splitDistances[1],splitDistances[2],splitDistances[3],splitDistances[4]));
|
||||
Math::scalar fSize = Math::scalar( smcList.Size() );
|
||||
const RenderBase::DisplayMode& dm = Graphic::GraphicSystem::Instance()->GetMainViewPortWindow()->GetDisplayMode();
|
||||
|
||||
pGMP->SetVectorParam(eGShaderVecLightCameraFrustumIntervalEnd,float4(splitDistances[1],splitDistances[2],splitDistances[3],splitDistances[4]));
|
||||
pGMP->SetVectorParam(eGShaderVecShadowMapSize,float4((float)shadowMapWidth,(float)shadowMapWidth,m_depthBias,fSize));//width,height,bias,cascade levels
|
||||
// set shadow color and strength
|
||||
// shadow.w = shadow strength
|
||||
|
|
|
@ -37,6 +37,19 @@ namespace App
|
|||
{
|
||||
__ImplementClass(App::LightprobeComponent, 'LPOM', App::RenderComponent)
|
||||
|
||||
|
||||
#if RENDERDEVICE_D3D9
|
||||
const D3D9::TextureD3D9* GetD3DTexture9(const GPtr<Graphic::RenderToTexture>& rtt)
|
||||
{
|
||||
const RenderBase::TextureHandle handle = rtt->GetTextureHandle();
|
||||
const Core::RefCounted* Ro = handle.AsObject();
|
||||
const D3D9::TextureD3D9* front = reinterpret_cast<const D3D9::TextureD3D9*>(Ro);
|
||||
return front;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
LightprobeComponent::LightprobeComponent():
|
||||
rendertime(0)
|
||||
,m_RenderTime(-1)
|
||||
|
@ -146,89 +159,89 @@ void LightprobeComponent::Save( AppWriter* pWriter ) const
|
|||
|
||||
void LightprobeComponent::SaveRenderResult( const Util::String& path )
|
||||
{
|
||||
#ifdef __WIN32__
|
||||
#if RENDERDEVICE_D3D9
|
||||
m_pExportCubeTex = D3D9::TextureD3D9::Create();
|
||||
|
||||
const D3D9::TextureD3D9& front = m_pXPosTexture->GetD3DTexture9();
|
||||
const D3D9::TextureD3D9& back = m_pXNegTexture->GetD3DTexture9();
|
||||
const D3D9::TextureD3D9* front = GetD3DTexture9(m_pXPosTexture);
|
||||
const D3D9::TextureD3D9* back = GetD3DTexture9(m_pXNegTexture);
|
||||
|
||||
const D3D9::TextureD3D9& top = m_pYPosTexture->GetD3DTexture9();
|
||||
const D3D9::TextureD3D9& under = m_pYNegTexture->GetD3DTexture9();
|
||||
const D3D9::TextureD3D9* top = GetD3DTexture9(m_pYPosTexture);
|
||||
const D3D9::TextureD3D9* under = GetD3DTexture9(m_pYNegTexture);
|
||||
|
||||
const D3D9::TextureD3D9& right = m_pZPosTexture->GetD3DTexture9();
|
||||
const D3D9::TextureD3D9& left = m_pZNegTexture->GetD3DTexture9();
|
||||
const D3D9::TextureD3D9* right = GetD3DTexture9(m_pZPosTexture);
|
||||
const D3D9::TextureD3D9* left = GetD3DTexture9(m_pZNegTexture);
|
||||
|
||||
ubyte* CubeData = NULL;
|
||||
CubeData = n_new_array(ubyte,front.GetTextureSize()*6);
|
||||
CubeData = n_new_array(ubyte,front->GetTextureSize()*6);
|
||||
n_assert(CubeData!=NULL);
|
||||
|
||||
//front
|
||||
SizeT levelPixelSize =front.GetTextureSize();
|
||||
SizeT levelPixelSize = front->GetTextureSize();
|
||||
ubyte* dataFront = new ubyte[levelPixelSize];
|
||||
n_assert(dataFront!=NULL);
|
||||
front.GetTextureData(dataFront);
|
||||
front->GetTextureData(dataFront);
|
||||
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataFront,levelPixelSize,front.GetHeight(),front.GetWidth());
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataFront,levelPixelSize,front->GetHeight(),front->GetWidth());
|
||||
//back
|
||||
levelPixelSize =back.GetTextureSize();
|
||||
levelPixelSize =back->GetTextureSize();
|
||||
ubyte* dataBack = new ubyte[levelPixelSize];
|
||||
n_assert(dataBack!=NULL);
|
||||
back.GetTextureData(dataBack);
|
||||
back->GetTextureData(dataBack);
|
||||
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataBack,levelPixelSize,front.GetHeight(),front.GetWidth());
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataBack,levelPixelSize,front->GetHeight(),front->GetWidth());
|
||||
//left
|
||||
levelPixelSize =left.GetTextureSize();
|
||||
levelPixelSize =left->GetTextureSize();
|
||||
ubyte* dataLeft = new ubyte[levelPixelSize];
|
||||
n_assert(dataLeft!=NULL);
|
||||
left.GetTextureData(dataLeft);
|
||||
left->GetTextureData(dataLeft);
|
||||
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataLeft,levelPixelSize,front.GetHeight(),front.GetWidth());
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataLeft,levelPixelSize,front->GetHeight(),front->GetWidth());
|
||||
//right
|
||||
levelPixelSize =front.GetTextureSize();
|
||||
levelPixelSize =front->GetTextureSize();
|
||||
ubyte* dataRight = new ubyte[levelPixelSize];
|
||||
n_assert(dataRight!=NULL);
|
||||
right.GetTextureData(dataRight);
|
||||
right->GetTextureData(dataRight);
|
||||
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataRight,levelPixelSize,front.GetHeight(),front.GetWidth());
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataRight,levelPixelSize,front->GetHeight(),front->GetWidth());
|
||||
|
||||
//up
|
||||
levelPixelSize =front.GetTextureSize();
|
||||
levelPixelSize =front->GetTextureSize();
|
||||
ubyte* dataUp = new ubyte[levelPixelSize];
|
||||
n_assert(dataUp!=NULL);
|
||||
top.GetTextureData(dataUp);
|
||||
top->GetTextureData(dataUp);
|
||||
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataUp,levelPixelSize,front.GetHeight(),front.GetWidth());
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataUp,levelPixelSize,front->GetHeight(),front->GetWidth());
|
||||
|
||||
//down
|
||||
levelPixelSize =front.GetTextureSize();
|
||||
levelPixelSize =front->GetTextureSize();
|
||||
ubyte* dataDown = new ubyte[levelPixelSize];
|
||||
n_assert(dataDown!=NULL);
|
||||
under.GetTextureData(dataDown);
|
||||
under->GetTextureData(dataDown);
|
||||
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataDown,levelPixelSize,front.GetHeight(),front.GetWidth());
|
||||
Resources::ImageOperations::HorizontalFlipImage(dataDown,levelPixelSize,front->GetHeight(),front->GetWidth());
|
||||
|
||||
//data generate
|
||||
ubyte* srcDataOffset = NULL;
|
||||
srcDataOffset = CubeData;
|
||||
Memory::CopyToGraphicsMemory(dataFront,srcDataOffset,levelPixelSize);
|
||||
|
||||
srcDataOffset += front.GetTextureSize();
|
||||
srcDataOffset += front->GetTextureSize();
|
||||
Memory::CopyToGraphicsMemory(dataBack,srcDataOffset,levelPixelSize);
|
||||
|
||||
srcDataOffset += front.GetTextureSize();
|
||||
srcDataOffset += front->GetTextureSize();
|
||||
Memory::CopyToGraphicsMemory(dataUp,srcDataOffset,levelPixelSize);
|
||||
|
||||
srcDataOffset += front.GetTextureSize();
|
||||
srcDataOffset += front->GetTextureSize();
|
||||
Memory::CopyToGraphicsMemory(dataDown,srcDataOffset,levelPixelSize);
|
||||
|
||||
srcDataOffset += front.GetTextureSize();
|
||||
srcDataOffset += front->GetTextureSize();
|
||||
Memory::CopyToGraphicsMemory(dataRight,srcDataOffset,levelPixelSize);
|
||||
|
||||
srcDataOffset += front.GetTextureSize();
|
||||
srcDataOffset += front->GetTextureSize();
|
||||
Memory::CopyToGraphicsMemory(dataLeft,srcDataOffset,levelPixelSize);
|
||||
|
||||
|
||||
Resources::ImageOperations::SaveDDSCubeImage(front.GetHeight(),front.GetWidth(),path,CubeData,front.GetTextureSize()*6);
|
||||
Resources::ImageOperations::SaveDDSCubeImage(front->GetHeight(),front->GetWidth(),path,CubeData,front->GetTextureSize()*6);
|
||||
|
||||
n_delete_array(CubeData);
|
||||
|
||||
|
|
|
@ -181,6 +181,11 @@ void ProjectorRenderComponent::_UpdateProjector()
|
|||
// Update shader param & retrieve render objects
|
||||
mProjector->_UpdateProjector();
|
||||
|
||||
for(int matIndex=0;matIndex<GetMaterialCount();matIndex++)
|
||||
{
|
||||
GPtr<Graphic::MaterialInstance> instance = GetMaterial(matIndex);
|
||||
instance->SetSort(Graphic::MatSort_ProjectorBegin+matIndex);
|
||||
}
|
||||
|
||||
// Collision dealing
|
||||
Math::matrix44 viewProjMatrix = Math::matrix44::zero();
|
||||
|
|
|
@ -129,7 +129,7 @@ void SimpleSkyComponent::updateScale( Graphic::Camera* camera )
|
|||
_mscale.scale(Math::float4(scale,scale,scale,1.0f));
|
||||
Math::matrix44 trans = camera->GetCameraSetting().GetViewTransform();
|
||||
trans.set_position(Math::float4(0.0f,0.0f,0.0f,1.0f));
|
||||
Math::matrix44 rot = Math::matrix44::rotationx(-90);
|
||||
Math::matrix44 rot = Math::matrix44::rotationx(-N_PI/2);
|
||||
trans = Math::matrix44::multiply(trans,rot);
|
||||
trans = Math::matrix44::multiply(trans,_mscale);
|
||||
mActor->SetTransform(trans);
|
||||
|
|
|
@ -716,7 +716,9 @@ namespace App
|
|||
}
|
||||
}
|
||||
|
||||
if(!m_DefaultFinalTrans.IsEmpty())
|
||||
const SizeT bonesCount = skeletonRes->GetBonesCount();
|
||||
|
||||
if(!m_DefaultFinalTrans.IsEmpty() && bonesCount == m_DefaultFinalTrans.Size())
|
||||
{
|
||||
m_FinalTrans = m_DefaultFinalTrans;
|
||||
return true;
|
||||
|
@ -725,7 +727,6 @@ namespace App
|
|||
m_FinalTrans.Clear();
|
||||
m_DefaultFinalTrans.Clear();
|
||||
|
||||
const SizeT bonesCount = skeletonRes->GetBonesCount();
|
||||
|
||||
const SkelBoneContainer& SkelBones = skeletonRes->GetSkelBones();
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@ THE SOFTWARE.
|
|||
#include "stdneb.h"
|
||||
#include "scriptfeature/inc/script_utility.h"
|
||||
#include "guifeature/guiutility.h"
|
||||
|
||||
namespace App
|
||||
{
|
||||
|
||||
|
@ -352,6 +353,11 @@ namespace App
|
|||
return widget->getRootKeyFocus();
|
||||
}
|
||||
|
||||
static void ICall_setGray(gconstpointer widget_ptr, bool value)
|
||||
{
|
||||
MyGUI::Widget* widget = static_cast<MyGUI::Widget*>(widget_ptr);
|
||||
widget->setGray(value);
|
||||
}
|
||||
|
||||
|
||||
void ICallReg_ScriptGUI_Widget()
|
||||
|
@ -408,8 +414,9 @@ namespace App
|
|||
,{ "ScriptGUI.Widget::ICall_getInheritsPick", (void*)&ICall_getInheritsPick}
|
||||
,{ "ScriptGUI.Widget::ICall_setMaskPick", (void*)&ICall_setMaskPick}
|
||||
,{ "ScriptGUI.Widget::ICall_isMaskPickInside", (void*)&ICall_isMaskPickInside}
|
||||
,{ "ScriptGUI.Widget::ICall_getRootMouseFocus", (void*)&ICall_getRootMouseFocus}
|
||||
,{ "ScriptGUI.Widget::ICall_getRootMouseFocus", (void*)&ICall_getRootMouseFocus}
|
||||
,{ "ScriptGUI.Widget::ICall_getRootKeyFocus", (void*)&ICall_getRootKeyFocus}
|
||||
,{ "ScriptGUI.Widget::ICall_setGray", (void*)&ICall_setGray}
|
||||
};
|
||||
|
||||
int size = sizeof(s_cScriptBindInternalCallDetail)/sizeof(InternalCallDetail);
|
||||
|
|
75
Engine/app/guifeature/guirenderobject.cc
Normal file
75
Engine/app/guifeature/guirenderobject.cc
Normal file
|
@ -0,0 +1,75 @@
|
|||
/****************************************************************************
|
||||
Copyright (c) 2011-2013,WebJet Business Division,CYOU
|
||||
|
||||
http://www.genesis-3d.com.cn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
|
||||
#include "stdneb.h"
|
||||
#include "graphicsystem/Camera/RenderPipeline/RenderData.h"
|
||||
#include "guifeature/guiserver.h"
|
||||
#include "guifeature/guirenderobject.h"
|
||||
|
||||
namespace App
|
||||
{
|
||||
|
||||
|
||||
__ImplementClass(GuiRenderObject,'GUOB',Graphic::RenderObject);
|
||||
|
||||
GuiRenderObject::GuiRenderObject()
|
||||
:m_renderable(NULL)
|
||||
{
|
||||
SetLayerID(0);
|
||||
}
|
||||
|
||||
GuiRenderObject::~GuiRenderObject()
|
||||
{
|
||||
n_delete(m_renderable);
|
||||
m_renderable = NULL;
|
||||
}
|
||||
|
||||
void GuiRenderObject::Setup()
|
||||
{
|
||||
if (m_renderable == NULL)
|
||||
{
|
||||
m_renderable = n_new(GuiRenderable);
|
||||
m_renderable->SetMaterial(GUIServer::Instance()->GetGuiMaterial());
|
||||
}
|
||||
}
|
||||
|
||||
void GuiRenderObject::AddToCollection(Graphic::RenderDataCollection* collection, const Graphic::RenderConfig* renderConfig)
|
||||
{
|
||||
if (m_renderable)
|
||||
{
|
||||
collection->Push(m_renderable);
|
||||
}
|
||||
}
|
||||
|
||||
void GuiRenderObject::Render(const Graphic::Renderable* renderable, Graphic::RenderPassType passType, const Graphic::Material* customizedMaterial)
|
||||
{
|
||||
GUIServer::Instance()->_renderUI();
|
||||
}
|
||||
|
||||
void GuiRenderObject::OnWillRenderObject(Graphic::Camera* sender)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
57
Engine/app/guifeature/guirenderobject.h
Normal file
57
Engine/app/guifeature/guirenderobject.h
Normal file
|
@ -0,0 +1,57 @@
|
|||
/****************************************************************************
|
||||
Copyright (c) 2011-2013,WebJet Business Division,CYOU
|
||||
|
||||
http://www.genesis-3d.com.cn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#ifndef __guirenderobject_H__
|
||||
#define __guirenderobject_H__
|
||||
|
||||
#include "graphicsystem/Renderable/RenderObject.h"
|
||||
#include "graphicsystem/Renderable/Renderable.h"
|
||||
namespace App
|
||||
{
|
||||
|
||||
class GuiRenderable : public Graphic::Renderable
|
||||
{
|
||||
};
|
||||
|
||||
|
||||
class GuiRenderObject : public Graphic::RenderObject
|
||||
{
|
||||
__DeclareSubClass(GuiRenderObject, Graphic::RenderObject);
|
||||
public:
|
||||
GuiRenderObject();
|
||||
virtual ~GuiRenderObject();
|
||||
|
||||
void Setup();
|
||||
|
||||
virtual void Render(const Graphic::Renderable* renderable, Graphic::RenderPassType passType, const Graphic::Material* customizedMaterial);
|
||||
virtual void AddToCollection(Graphic::RenderDataCollection* collection, const Graphic::RenderConfig* renderConfig);
|
||||
virtual void OnWillRenderObject(Graphic::Camera* sender);
|
||||
|
||||
private:
|
||||
GuiRenderable* m_renderable;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif //__guirenderobject_H__
|
|
@ -60,6 +60,7 @@ namespace App
|
|||
|
||||
GuiRoot::GuiRoot()
|
||||
:m_rootObj(NULL)
|
||||
,m_rootRefID(0)
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -117,10 +118,13 @@ namespace App
|
|||
|
||||
void GuiRoot::Destroy()
|
||||
{
|
||||
mono_gchandle_free(m_rootRefID);
|
||||
m_rootRefID = 0;
|
||||
m_rootObj = NULL;
|
||||
resetScriptMethods();
|
||||
if (m_rootObj)
|
||||
{
|
||||
mono_gchandle_free(m_rootRefID);
|
||||
m_rootRefID = 0;
|
||||
m_rootObj = NULL;
|
||||
resetScriptMethods();
|
||||
}
|
||||
}
|
||||
|
||||
void GuiRoot::InitGuiScript()
|
||||
|
|
84
Engine/app/guifeature/guiscene.cc
Normal file
84
Engine/app/guifeature/guiscene.cc
Normal file
|
@ -0,0 +1,84 @@
|
|||
/****************************************************************************
|
||||
Copyright (c) 2011-2013,WebJet Business Division,CYOU
|
||||
|
||||
http://www.genesis-3d.com.cn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#include "stdneb.h"
|
||||
#include "basegamefeature/managers/sceneschedulemanager.h"
|
||||
#include "guifeature/guiserver.h"
|
||||
#include "guifeature/guiscene.h"
|
||||
#include "guifeature/guirenderobject.h"
|
||||
namespace App
|
||||
{
|
||||
|
||||
|
||||
GuiScene::GuiScene()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
GuiScene::~GuiScene()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void GuiScene::Setup()
|
||||
{
|
||||
m_scene = SceneScheduleManager::Instance()->OpenScene("gui scene for com.genesis", true, true);
|
||||
m_scene->GetRenderScene()->SetRenderSort(Graphic::RenderScene::SortUI);
|
||||
|
||||
m_guiCamera = SimpleCamera::Create();
|
||||
m_guiCamera->SetRenderSort(Graphic::Camera::SortUI);
|
||||
m_guiCamera->SetPickMark(Graphic::Camera::PickSelfObjects);
|
||||
m_guiCamera->SetUseCallBack(false);
|
||||
m_guiCamera->Setup();
|
||||
m_guiCamera->SetProj(Graphic::Camera::VT_ortho, 1.0f, -10.0f, 10.0f);
|
||||
m_guiCamera->SetTransform(Math::matrix44::identity());
|
||||
m_guiCamera->OnTransformChanged();
|
||||
|
||||
m_guiCamera->SetTargetWindow(GUIServer::Instance()->GetTargetWindow());
|
||||
|
||||
m_scene->GetRenderScene()->_AddCamera(m_guiCamera.get_unsafe());
|
||||
|
||||
m_guiObject = GuiRenderObject::Create();
|
||||
m_guiObject->Setup();
|
||||
m_guiObject->AttachNoCull(m_guiCamera->GetCameraScene());
|
||||
}
|
||||
|
||||
|
||||
|
||||
void GuiScene::Destroy()
|
||||
{
|
||||
m_guiObject->Detach();
|
||||
m_guiCamera->GetRenderScene()->_RemoveCamera(m_guiCamera.get_unsafe());
|
||||
SceneScheduleManager::Instance()->CloseScene(m_scene);
|
||||
m_scene = NULL;
|
||||
}
|
||||
|
||||
void GuiScene::SetTargetWindow(Graphic::ViewPortWindow* vpw)
|
||||
{
|
||||
if (m_guiCamera.isvalid())
|
||||
{
|
||||
m_guiCamera->SetTargetWindow(vpw);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
55
Engine/app/guifeature/guiscene.h
Normal file
55
Engine/app/guifeature/guiscene.h
Normal file
|
@ -0,0 +1,55 @@
|
|||
/****************************************************************************
|
||||
Copyright (c) 2011-2013,WebJet Business Division,CYOU
|
||||
|
||||
http://www.genesis-3d.com.cn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#ifndef __guiscene_H__
|
||||
#define __guiscene_H__
|
||||
|
||||
#include "appframework/scene.h"
|
||||
#include "appframework/simplecamera.h"
|
||||
namespace App
|
||||
{
|
||||
class GuiRenderObject;
|
||||
|
||||
class GuiScene
|
||||
{
|
||||
public:
|
||||
GuiScene();
|
||||
~GuiScene();
|
||||
|
||||
void Setup();
|
||||
|
||||
void Destroy();
|
||||
|
||||
void SetTargetWindow(Graphic::ViewPortWindow* vpw);
|
||||
|
||||
private:
|
||||
GPtr<Scene> m_scene;
|
||||
GPtr<SimpleCamera> m_guiCamera;
|
||||
GPtr<GuiRenderObject> m_guiObject;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif //__guiscene_H__
|
|
@ -28,7 +28,7 @@ THE SOFTWARE.
|
|||
#include "addons/myguiplatforms/include/MyGUI_GenesisPlatform.h"
|
||||
#include "basegamefeature/managers/timesource.h"
|
||||
#include "guifeature/gui.h"
|
||||
#include "guiroot.h"
|
||||
#include "guifeature/guiscene.h"
|
||||
|
||||
#include "foundation/io/ioserver.h"
|
||||
namespace App
|
||||
|
@ -39,8 +39,6 @@ namespace App
|
|||
|
||||
using namespace MyGUI;
|
||||
|
||||
Util::String g_uiPath = "asset:UIMedia/";
|
||||
|
||||
|
||||
GUIServer::GUIServer()
|
||||
:m_gui(NULL)
|
||||
|
@ -48,6 +46,7 @@ namespace App
|
|||
,m_visible(true)
|
||||
,m_opened(false)
|
||||
,m_targetWindow(NULL)
|
||||
,m_coreFile(GUI_ROOT_CONFIG)
|
||||
{
|
||||
__ConstructImageSingleton;
|
||||
}
|
||||
|
@ -63,27 +62,50 @@ namespace App
|
|||
return (NULL != m_platform) && (NULL != m_gui);
|
||||
}
|
||||
|
||||
void GUIServer::SetCoreFile(const char* core)
|
||||
void GUIServer::SetLogDir(const Util::String& dir)
|
||||
{
|
||||
m_logDir = dir;
|
||||
}
|
||||
|
||||
void GUIServer::SetCoreFile(const Util::String& core)
|
||||
{
|
||||
m_coreFile = core;
|
||||
}
|
||||
|
||||
void GUIServer::SetEngineDir(const Util::String& dir)
|
||||
void GUIServer::AddMediaLocaltion(const Util::String& path)
|
||||
{
|
||||
m_engineDir = dir;
|
||||
GenesisGuiGlobal::pushMediaLocation(path.AsCharPtr());
|
||||
}
|
||||
|
||||
bool GUIServer::Open()
|
||||
void GUIServer::SetTargetWindow(Graphic::ViewPortWindow* vpw)
|
||||
{
|
||||
Util::String core_file = g_uiPath + m_coreFile;
|
||||
if(IO::IoServer::Instance()->FileExists(Util::StringAtom(core_file)))
|
||||
m_targetWindow = vpw;
|
||||
OnWindowResized();
|
||||
if (m_guiScene)
|
||||
{
|
||||
_initMyGUI();
|
||||
_initScript();
|
||||
m_opened = true;
|
||||
m_guiScene->SetTargetWindow(vpw);
|
||||
}
|
||||
return m_opened;
|
||||
}
|
||||
|
||||
void GUIServer::Open()
|
||||
{
|
||||
_initMyGUI();
|
||||
_initScript();
|
||||
m_opened = true;
|
||||
}
|
||||
|
||||
void GUIServer::OnFrame()
|
||||
{
|
||||
_beforeDraw();
|
||||
}
|
||||
|
||||
Graphic::MaterialInstance* GUIServer::GetGuiMaterial() const
|
||||
{
|
||||
if (m_platform)
|
||||
{
|
||||
return m_platform->getRenderManagerPtr()->getMaterial()->GetHandle().get_unsafe();
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void GUIServer::Close()
|
||||
|
@ -103,11 +125,16 @@ namespace App
|
|||
n_delete(m_platform);
|
||||
m_platform = NULL;
|
||||
}
|
||||
|
||||
if (m_guiScene)
|
||||
{
|
||||
m_guiScene->Destroy();
|
||||
n_delete(m_guiScene);
|
||||
m_guiScene = NULL;
|
||||
}
|
||||
m_targetWindow = NULL;
|
||||
m_opened = false;
|
||||
}
|
||||
|
||||
Graphic::GraphicSystem::Instance()->SetUIDrawCallBack(NULL);
|
||||
}
|
||||
|
||||
void GUIServer::OnWindowResized()
|
||||
|
@ -136,6 +163,11 @@ namespace App
|
|||
{
|
||||
m_guiRoot.ExitGuiScript();
|
||||
|
||||
ForceDestroyGuiScript();
|
||||
}
|
||||
|
||||
void GUIServer::ForceDestroyGuiScript()
|
||||
{
|
||||
m_guiRoot.Destroy();
|
||||
m_guiEvent.Destroy();
|
||||
}
|
||||
|
@ -346,20 +378,31 @@ namespace App
|
|||
return mygui_key;
|
||||
}
|
||||
|
||||
MyGUI::MouseButton GUIServer::MouseButtonToMyGUI(Input::InputMouseButton::Code btn)
|
||||
{
|
||||
switch(btn)
|
||||
{
|
||||
case Input::InputMouseButton::LeftButton:
|
||||
return MyGUI::MouseButton::Left;
|
||||
case Input::InputMouseButton::RightButton:
|
||||
return MyGUI::MouseButton::Right;
|
||||
case Input::InputMouseButton::MiddleButton:
|
||||
return MyGUI::MouseButton::Middle;
|
||||
default:
|
||||
return MyGUI::MouseButton::None;
|
||||
}
|
||||
}
|
||||
|
||||
void GUIServer::_initMyGUI()
|
||||
{
|
||||
n_assert(NULL == m_platform);
|
||||
n_assert(NULL == m_gui);
|
||||
m_platform = n_new(GenesisPlatform);
|
||||
GenesisTexture::SetResourcePath(g_uiPath);
|
||||
GenesisRenderManager::SetResourcePath(g_uiPath);
|
||||
GenesisDataManager::getInstance().SetResourcePath(g_uiPath);
|
||||
std::string uilog;
|
||||
#ifdef __WIN32__
|
||||
if (m_engineDir.Length())
|
||||
if (m_logDir.Length())
|
||||
{
|
||||
uilog = m_engineDir.AsCharPtr();
|
||||
uilog = m_logDir.AsCharPtr();
|
||||
uilog += "\\gui.log";
|
||||
}
|
||||
#endif
|
||||
|
@ -368,19 +411,17 @@ namespace App
|
|||
|
||||
m_gui = n_new(Gui);
|
||||
m_gui->initialise(m_coreFile.AsCharPtr());
|
||||
Graphic::GraphicSystem::Instance()->SetUIDrawCallBack(_drawUI);
|
||||
Graphic::GraphicSystem::Instance()->SetUIBeforeDrawCallBack(_beforeDraw);
|
||||
|
||||
MyGUI::PointerManager::getInstance().setVisible(false);
|
||||
|
||||
m_guiScene = n_new(GuiScene);
|
||||
m_guiScene->Setup();
|
||||
}
|
||||
void GUIServer::_initScript()
|
||||
{
|
||||
m_guiRoot.Init();
|
||||
m_guiEvent.Init();
|
||||
}
|
||||
void GUIServer::_drawUI()
|
||||
{
|
||||
Instance()->_renderUI();
|
||||
}
|
||||
|
||||
void GUIServer::_renderUI()
|
||||
{
|
||||
|
@ -393,18 +434,14 @@ namespace App
|
|||
}
|
||||
if (vpw->GetNeedUpdate())
|
||||
{
|
||||
Graphic::GraphicSystem::Instance()->SetCurrentTargetWindow(vpw, RenderBase::RenderTarget::ClearNone);
|
||||
GetPlatform()->getRenderManagerPtr()->renderGUI((float)App::GameTime::Instance()->GetFrameTime());
|
||||
//Graphic::GraphicSystem::Instance()->_SetBackBuffer(vpw);
|
||||
m_platform->getRenderManagerPtr()->renderGUI((float)App::GameTime::Instance()->GetFrameTime());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
void GUIServer::_beforeDraw()
|
||||
{
|
||||
if (HasInstance())
|
||||
{
|
||||
Instance()->eventBeforeDrawUI((void*)Instance());
|
||||
}
|
||||
|
||||
eventBeforeDrawUI((void*)Instance());
|
||||
}
|
||||
}
|
|
@ -30,12 +30,13 @@ THE SOFTWARE.
|
|||
#include "util/string.h"
|
||||
#include "input/base/inputkeyboardbase.h"
|
||||
#include "input/base/inputmousebase.h"
|
||||
#include "guiroot.h"
|
||||
#include "guievent.h"
|
||||
#include "guifeature/guiroot.h"
|
||||
#include "guifeature/guievent.h"
|
||||
#include "foundation/delegates/delegatetype.h"
|
||||
|
||||
|
||||
#define GUI_ROOT_CONFIG "gui_core.xml"
|
||||
#define GUI_DEFAULT_LOCATION "asset:UIMedia/"
|
||||
namespace MyGUI
|
||||
{
|
||||
class GenesisPlatform;
|
||||
|
@ -43,11 +44,12 @@ namespace MyGUI
|
|||
namespace Graphic
|
||||
{
|
||||
class ViewPortWindow;
|
||||
class MaterialInstance;
|
||||
}
|
||||
|
||||
namespace App
|
||||
{
|
||||
//typedef MyGUI::delegates::CMultiDelegate1<void*> EventHandle_BeforeDrawVoid;
|
||||
class GuiScene;
|
||||
|
||||
typedef Delegates::delegates::CMultiDelegate1<void*> EventHandle_BeforeDrawVoid;
|
||||
|
||||
|
@ -57,12 +59,13 @@ namespace App
|
|||
__DeclareImageSingleton(GUIServer);
|
||||
public:
|
||||
virtual ~GUIServer();
|
||||
void SetCoreFile(const char* core);
|
||||
void SetEngineDir(const Util::String& dir);
|
||||
void SetCoreFile(const Util::String& core = GUI_ROOT_CONFIG);
|
||||
bool Open();
|
||||
void SetLogDir(const Util::String& dir);
|
||||
void AddMediaLocaltion(const Util::String& path);
|
||||
void SetCoreFile(const Util::String& core);
|
||||
void Open();
|
||||
bool IsOpen();
|
||||
void Close();
|
||||
void OnFrame();
|
||||
void OnWindowResized();
|
||||
void OnDeviceReseted();
|
||||
|
||||
|
@ -70,12 +73,14 @@ namespace App
|
|||
Graphic::ViewPortWindow* GetTargetWindow() const;
|
||||
|
||||
MyGUI::Gui* GetGui() const;
|
||||
MyGUI::GenesisPlatform* GetPlatform() const;
|
||||
GuiEvent& GetGuiEvent();
|
||||
|
||||
MyGUI::IntSize GetScreenSize() const;
|
||||
|
||||
void InitGuiRootScript();
|
||||
void ExitGuiScript();
|
||||
void ForceDestroyGuiScript();
|
||||
bool StartTick(bool start);
|
||||
|
||||
bool GetVisible();
|
||||
|
@ -86,39 +91,35 @@ namespace App
|
|||
bool AutoResolutionWidth();
|
||||
bool AutoResolutionHeight();
|
||||
|
||||
Graphic::MaterialInstance* GetGuiMaterial() const;
|
||||
|
||||
EventHandle_BeforeDrawVoid eventBeforeDrawUI;
|
||||
|
||||
static MyGUI::KeyCode KeyCodeWJtoMyGUI(Input::InputKey::Code key);
|
||||
|
||||
static MyGUI::MouseButton MouseButtonToMyGUI(Input::InputMouseButton::Code btn);
|
||||
void _renderUI();
|
||||
private:
|
||||
MyGUI::GenesisPlatform* GetPlatform() const;
|
||||
|
||||
void _initMyGUI();
|
||||
void _initScript();
|
||||
void _renderUI();
|
||||
static void _beforeDraw();
|
||||
static void _drawUI();
|
||||
void _beforeDraw();
|
||||
|
||||
Graphic::ViewPortWindow* m_targetWindow;
|
||||
MyGUI::Gui* m_gui;
|
||||
MyGUI::GenesisPlatform* m_platform;
|
||||
GuiScene* m_guiScene;
|
||||
bool m_visible;
|
||||
|
||||
Util::String m_coreFile;
|
||||
Util::String m_engineDir;
|
||||
Util::String m_logDir;
|
||||
GuiRoot m_guiRoot; //reference of a c# object.
|
||||
GuiEvent m_guiEvent; //used for event between c++ and c#.
|
||||
|
||||
bool m_opened;
|
||||
GUIServer();
|
||||
|
||||
};
|
||||
|
||||
inline void GUIServer::SetTargetWindow(Graphic::ViewPortWindow* vpw)
|
||||
{
|
||||
m_targetWindow = vpw;
|
||||
OnWindowResized();
|
||||
}
|
||||
|
||||
inline Graphic::ViewPortWindow* GUIServer::GetTargetWindow() const
|
||||
{
|
||||
return m_targetWindow;
|
||||
|
@ -128,6 +129,7 @@ namespace App
|
|||
{
|
||||
return m_gui;
|
||||
}
|
||||
|
||||
inline MyGUI::GenesisPlatform* GUIServer::GetPlatform() const
|
||||
{
|
||||
return m_platform;
|
||||
|
|
|
@ -416,6 +416,9 @@ namespace App
|
|||
mRenderObject = RenderObjectType::Create();
|
||||
}
|
||||
mRenderObject->SetOwner(this);
|
||||
#ifdef __GENESIS_EDITOR__
|
||||
mRenderObject->SetEditorVisible(m_bEidtorVis);
|
||||
#endif
|
||||
mRenderObject->SetTransform(mActor->GetWorldTransform());
|
||||
_AttachRenderObject();
|
||||
mIsBuild = true;
|
||||
|
@ -480,7 +483,7 @@ namespace App
|
|||
void ParticleRenderComponent::SetEditorVisible(bool bVis)
|
||||
{
|
||||
Super::SetEditorVisible(bVis);
|
||||
if (IsActive())
|
||||
if (IsActive() && mRenderObject.isvalid())
|
||||
{
|
||||
mRenderObject->SetEditorVisible(bVis);
|
||||
}
|
||||
|
|
|
@ -93,6 +93,7 @@ namespace App
|
|||
Math::matrix44 vp = camera->GetViewProjTransform();
|
||||
gModleMaterix = Math::matrix44::multiply(vp,gModleMaterix);
|
||||
particleRC->GetParticleSystem()->SetShaderParam();
|
||||
rightVec4.set_w(0.0);
|
||||
pGMP->SetVectorParam(eGShaderParticleUpVec,Math::float4::normalize(upVector4));
|
||||
pGMP->SetVectorParam(eGShaderParticleRightVec,Math::float4::normalize(rightVec4));
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "PhysicsBodyComponent.h"
|
||||
#include "appframework/actor.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "physXfeature/PhysicsBodyComponent.h"
|
||||
#include "physicsCore/PhysicsDynamic.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "profilesystem/ProfileSystem.h"
|
||||
#include "PhysicsFeature.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined(__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "appframework/actor.h"
|
||||
#include "PhysicsBoxShape.h"
|
||||
|
@ -70,15 +70,11 @@ namespace App
|
|||
|
||||
void PhysicsBoxShape::OnResize(const Math::bbox& bb)
|
||||
{
|
||||
const Math::bbox& _box = bb;
|
||||
Math::vector _value = _box.size();
|
||||
Math::vector _value = bb.size();
|
||||
if (!Math::n_nearequal(_value.length(),0.0f,0.001f))
|
||||
{
|
||||
m_Dimension.set(_value.x(), _value.y(), _value.z());
|
||||
}
|
||||
Math::vector _center(_box.center().x(), _box.center().y(), _box.center().z());
|
||||
_value = _center*m_ActorScale;
|
||||
m_Center.set(_value.x(), _value.y(), _value.z());
|
||||
}
|
||||
|
||||
void PhysicsBoxShape::SetDimension( const Math::float3& dimension )
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "appframework/actor.h"
|
||||
#include "PhysicsCapsuleShape.h"
|
||||
|
@ -69,13 +69,9 @@ namespace App
|
|||
|
||||
void PhysicsCapsuleShape::OnResize(const Math::bbox& bb)
|
||||
{
|
||||
const Math::bbox& _box = bb;
|
||||
Math::vector _center(_box.center().x(), _box.center().y(), _box.center().z());
|
||||
Math::vector _value = _center*m_ActorScale;
|
||||
m_Center.set(_value.x(), _value.y(), _value.z());
|
||||
if (!Math::n_nearequal(_box.size().length(),0.0f,0.001f))
|
||||
if (!Math::n_nearequal(bb.size().length(),0.0f,0.001f))
|
||||
{
|
||||
Math::float2 _extent = _GetScaledLocalExtent(_box.size(), (Math::scalar)m_Direct);
|
||||
Math::float2 _extent = _GetScaledLocalExtent(bb.size(), (Math::scalar)m_Direct);
|
||||
m_Radius = _extent.x();
|
||||
m_Height = _extent.y();
|
||||
}
|
||||
|
@ -138,8 +134,13 @@ namespace App
|
|||
if (m_pShape)
|
||||
{
|
||||
Math::quaternion _realRotation = Math::quaternion::multiply(m_Rotation, _GetQuatByDirection((Math::scalar)m_Direct));
|
||||
|
||||
PxMat44 pos = RotPosToPxMat(m_Center,_realRotation);
|
||||
Math::float3 bbCenter(0.0f, 0.0f, 0.0f);
|
||||
if (m_pEntity && m_pEntity->GetBodyCom() && m_pEntity->GetBodyCom()->GetActor())
|
||||
{
|
||||
const Math::bbox& bb = m_pEntity->GetBodyCom()->GetActor()->GetLocalBoundingBox();
|
||||
bbCenter.set(bb.center().x(), bb.center().y(), bb.center().z());
|
||||
}
|
||||
PxMat44 pos = RotPosToPxMat(m_Center+bbCenter,_realRotation);
|
||||
m_pShape->setLocalPose(PxTransform(pos));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "appframework/actor.h"
|
||||
#include "resource/meshres.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "PxRigidDynamic.h"
|
||||
#include "PhysicsDynamic.h"
|
||||
#include "PhysicsServer.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
****************************************************************************/
|
||||
#if __USE_PHYSX__ || __GENESIS_EDITOR__
|
||||
#if defined (__USE_PHYSX__) || defined (__GENESIS_EDITOR__)
|
||||
#include "stdneb.h"
|
||||
#include "appframework/actor.h"
|
||||
#include "PhysicsEntity.h"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user