Various fixes

This commit is contained in:
Areloch 2019-05-11 21:42:27 -05:00
parent 60a29777fa
commit 3fa7a0d4fa
27 changed files with 171 additions and 177 deletions

View file

@ -40,6 +40,8 @@
#include "assets/assetPtr.h"
#endif
#include "T3D/entity.h"
// Debug Profiling.
#include "platform/profiler.h"
@ -133,12 +135,14 @@ void GameObjectAsset::copyTo(SimObject* object)
void GameObjectAsset::initializeAsset()
{
//Ensure we have an expanded filepath
mScriptFile = expandAssetFilePath(mScriptFile);
if (!Platform::isFullPath(mScriptFile))
mScriptFile = getOwned() ? expandAssetFilePath(mScriptFile) : mScriptFile;
if (Platform::isFile(mScriptFile))
Con::executeFile(mScriptFile, false, false);
mTAMLFile = expandAssetFilePath(mTAMLFile);
if (!Platform::isFullPath(mTAMLFile))
mTAMLFile = getOwned() ? expandAssetFilePath(mTAMLFile) : mTAMLFile;
}
void GameObjectAsset::onAssetRefresh()
@ -165,7 +169,7 @@ void GameObjectAsset::setScriptFile(const char* pScriptFile)
return;
// Update.
mScriptFile = expandAssetFilePath(pScriptFile);
mScriptFile = getOwned() ? expandAssetFilePath(pScriptFile) : pScriptFile;
// Refresh the asset.
refreshAsset();
@ -185,7 +189,7 @@ void GameObjectAsset::setTAMLFile(const char* pTAMLFile)
return;
// Update.
mTAMLFile = expandAssetFilePath(pTAMLFile);
mTAMLFile = getOwned() ? expandAssetFilePath(pTAMLFile) : pTAMLFile;
// Refresh the asset.
refreshAsset();
@ -218,7 +222,12 @@ const char* GameObjectAsset::create()
}
//Flag it so we know where it came from
pSimObject->setDataField("GameObject", nullptr, getAssetId());
//Entity* e = dynamic_cast<Entity*>(pSimObject);
//e->_setGameObject(getAssetId());
StringTableEntry assetId = getAssetId();
pSimObject->setDataField(StringTable->insert("GameObject"), nullptr, getAssetId());
return pSimObject->getIdString();
}

View file

@ -86,6 +86,7 @@ ConsoleSetType(TypeShapeAssetPtr)
ShapeAsset::ShapeAsset()
{
mFileName = StringTable->EmptyString();
}
//-----------------------------------------------------------------------------
@ -129,6 +130,10 @@ void ShapeAsset::initializeAsset()
ResourceManager::get().getChangedSignal().notify(this, &ShapeAsset::_onResourceChanged);
//Ensure our path is expando'd if it isn't already
if (!Platform::isFullPath(mFileName))
mFileName = getOwned() ? expandAssetFilePath(mFileName) : mFileName;
loadShape();
}
@ -144,8 +149,7 @@ void ShapeAsset::setShapeFile(const char* pShapeFile)
if (pShapeFile == mFileName)
return;
// Update.
mFileName = getOwned() ? expandAssetFilePath(pShapeFile) : StringTable->insert(pShapeFile);
mFileName = pShapeFile;
// Refresh the asset.
refreshAsset();
@ -156,6 +160,8 @@ void ShapeAsset::_onResourceChanged(const Torque::Path &path)
if (path != Torque::Path(mFileName) )
return;
refreshAsset();
loadShape();
}
@ -268,9 +274,13 @@ void ShapeAsset::copyTo(SimObject* object)
void ShapeAsset::onAssetRefresh(void)
{
if (dStrcmp(mFileName, "") == 0)
if (mFileName == StringTable->EmptyString())
return;
// Update.
if(!Platform::isFullPath(mFileName))
mFileName = getOwned() ? expandAssetFilePath(mFileName) : mFileName;
loadShape();
}
@ -405,4 +415,4 @@ bool GuiInspectorTypeShapeAssetPtr::updateRects()
}
return resized;
}
}

View file

@ -157,8 +157,7 @@ void Entity::initPersistFields()
endGroup("Misc");
addGroup("GameObject");
addProtectedField("GameObject", TypeGameObjectAssetPtr, Offset(mGameObjectAsset, Entity), &_setGameObject, &defaultProtectedGetFn,
"The asset Id used for the game object this entity is based on.");
addField("GameObject", TypeGameObjectAssetPtr, Offset(mGameObjectAsset, Entity), "The asset Id used for the game object this entity is based on.");
addField("dirtyGameObject", TypeBool, Offset(mDirtyGameObject, Entity), "If this entity is a GameObject, it flags if this instance delinates from the template.",
AbstractClassRep::FieldFlags::FIELD_HideInInspectors);
@ -246,7 +245,7 @@ bool Entity::onAdd()
if (isServerObject())
{
setMaskBits(TransformMask);
setMaskBits(NamespaceMask);
//setMaskBits(NamespaceMask);
}
else
{
@ -2019,4 +2018,4 @@ DefineEngineFunction(findEntitiesByTag, const char*, (SimGroup* searchingGroup,
}
object->notifyComponents(signalFunction, argA, argB, argC, argD, argE);*/
}
}

View file

@ -85,9 +85,6 @@ private:
StringTableEntry mGameObjectAssetId;
AssetPtr<GameObjectAsset> mGameObjectAsset;
//Marked if this entity is a GameObject and deliniates from the parent GO asset
bool mDirtyGameObject;
ContainerQueryInfo containerInfo;
bool mInitialized;
@ -100,6 +97,8 @@ private:
S32 mLifetimeMS;
protected:
//Marked if this entity is a GameObject and deliniates from the parent GO asset
bool mDirtyGameObject;
virtual void processTick(const Move* move);
virtual void advanceTime(F32 dt);

View file

@ -3,9 +3,9 @@
IMPLEMENT_CO_NETOBJECT_V1(AIPlayerObject);
AIPlayerObject::AIPlayerObject()
: mAIControllerComponent(nullptr)
//: mAIControllerComponent(nullptr)
{
mSuperClassName = StringTable->insert("Entity");
}
AIPlayerObject::~AIPlayerObject()
{
@ -21,7 +21,7 @@ bool AIPlayerObject::onAdd()
if (!mDirtyGameObject)
{
//AI Controller
mAIControllerComponent = new AIControllerComponent();
/*mAIControllerComponent = new AIControllerComponent();
if (!mAIControllerComponent->registerObject())
{
Con::errorf("PlayerObject::onAdd - unable to add mAIControllerComponent!");
@ -30,7 +30,7 @@ bool AIPlayerObject::onAdd()
mAIControllerComponent->setInternalName("aiControllerComponent");
addComponent(mAIControllerComponent);
addComponent(mAIControllerComponent);*/
}
return true;
@ -39,4 +39,4 @@ bool AIPlayerObject::onAdd()
void AIPlayerObject::onRemove()
{
Parent::onRemove();
}
}

View file

@ -1,13 +1,13 @@
#pragma once
#include "playerObject.h"
#include "T3D/components/ai/aiControllerComponent.h"
//#include "T3D/components/ai/aiControllerComponent.h"
class AIPlayerObject : public PlayerObject
{
typedef PlayerObject Parent;
AIControllerComponent* mAIControllerComponent;
//AIControllerComponent* mAIControllerComponent;
public:
AIPlayerObject();
@ -17,4 +17,4 @@ public:
virtual void onRemove();
DECLARE_CONOBJECT(AIPlayerObject);
};
};

View file

@ -5,10 +5,10 @@ IMPLEMENT_CO_NETOBJECT_V1(PlayerObject);
PlayerObject::PlayerObject()
: mMeshComponent(nullptr),
mCollisionComponent(nullptr),
mAnimationComponent(nullptr),
//mAnimationComponent(nullptr),
mPhysicsComponent(nullptr)
{
mSuperClassName = StringTable->insert("Entity");
}
PlayerObject::~PlayerObject()
{
@ -48,7 +48,7 @@ bool PlayerObject::onAdd()
addComponent(mCollisionComponent);
//Animation
mAnimationComponent = new ActionAnimationComponent();
/*mAnimationComponent = new ActionAnimationComponent();
if (!mAnimationComponent->registerObject())
{
Con::errorf("PlayerObject::onAdd - unable to add ActionAnimationComponent!");
@ -69,7 +69,7 @@ bool PlayerObject::onAdd()
mArmAnimationComponent->setInternalName("armAnimationComponent");
addComponent(mArmAnimationComponent);
addComponent(mArmAnimationComponent);*/
//Physics control
mPhysicsComponent = new PlayerControllerComponent();
@ -162,4 +162,4 @@ bool PlayerObject::onAdd()
void PlayerObject::onRemove()
{
Parent::onRemove();
}
}

View file

@ -3,8 +3,8 @@
#include "T3D/entity.h"
#include "T3D/components/render/meshComponent.h"
#include "T3D/components/collision/shapeCollisionComponent.h"
#include "T3D/components/animation/actionAnimationComponent.h"
#include "T3D/components/animation/armAnimationComponent.h"
//#include "T3D/components/animation/actionAnimationComponent.h"
//#include "T3D/components/animation/armAnimationComponent.h"
#include "T3D/components/physics/playerControllerComponent.h"
#include "T3D/components/game/stateMachineComponent.h"
#include "T3D/components/camera/cameraComponent.h"
@ -19,8 +19,8 @@ class PlayerObject : public Entity
MeshComponent* mMeshComponent;
ShapeCollisionComponent* mCollisionComponent;
ActionAnimationComponent* mAnimationComponent;
ArmAnimationComponent* mArmAnimationComponent;
//ActionAnimationComponent* mAnimationComponent;
//ArmAnimationComponent* mArmAnimationComponent;
PlayerControllerComponent* mPhysicsComponent;
StateMachineComponent* mStateMachineComponent;
CameraComponent* mCameraComponent;
@ -37,4 +37,4 @@ public:
virtual void onRemove();
DECLARE_CONOBJECT(PlayerObject);
};
};

View file

@ -1,11 +1,11 @@
#include "SoundEmitterObject.h"
#include "soundEmitterObject.h"
IMPLEMENT_CO_NETOBJECT_V1(SoundEmitterObject);
SoundEmitterObject::SoundEmitterObject()
: mSoundComponent(nullptr)
{
mSuperClassName = StringTable->insert("Entity");
}
SoundEmitterObject::~SoundEmitterObject()
{
@ -35,4 +35,4 @@ bool SoundEmitterObject::onAdd()
void SoundEmitterObject::onRemove()
{
Parent::onRemove();
}
}

View file

@ -1,7 +1,7 @@
#pragma once
#include "T3D/entity.h"
#include "T3D/components/audio/soundComponent.h"
#include "T3D/components/audio/SoundComponent.h"
class SoundEmitterObject : public Entity
{
@ -17,4 +17,4 @@ public:
virtual void onRemove();
DECLARE_CONOBJECT(SoundEmitterObject);
};
};

View file

@ -7,7 +7,6 @@ StaticShapeObject::StaticShapeObject()
mCollisionComponent(nullptr),
mAnimationComponent(nullptr)
{
}
StaticShapeObject::~StaticShapeObject()
{
@ -65,4 +64,4 @@ bool StaticShapeObject::onAdd()
void StaticShapeObject::onRemove()
{
Parent::onRemove();
}
}

View file

@ -70,6 +70,9 @@
#ifndef MATERIALASSET_H
#include "T3D/assets/MaterialAsset.h"
#endif
#ifndef GAME_OBJECT_ASSET_H
#include "T3D/assets/GameObjectAsset.h"
#endif
// Script bindings.
#include "assetManager_ScriptBinding.h"
@ -272,10 +275,16 @@ bool AssetManager::loadModuleAutoLoadAssets(ModuleDefinition* pModuleDefinition)
{
assetBase = mTaml.read<MaterialAsset>(assetDef->mAssetBaseFilePath);
}
else if (assetDef->mAssetType == StringTable->insert("GameObjectAsset"))
{
assetBase = mTaml.read<GameObjectAsset>(assetDef->mAssetBaseFilePath);
}
//load the asset now if valid
if (assetBase)
addPrivateAsset(assetBase);
{
assetBase->setOwned(this, assetDef);
}
}
}
}

View file

@ -658,8 +658,11 @@ void RenderProbeMgr::_update4ProbeConsts(const SceneData &sgData,
shaderConsts->setSafe(probeShaderConsts->mProbeBoxMinSC, probeBoxMinArray);
shaderConsts->setSafe(probeShaderConsts->mProbeBoxMaxSC, probeBoxMaxArray);
shaderConsts->setSafe(probeShaderConsts->mProbeConfigDataSC, probeConfigArray);
GFX->setCubeArrayTexture(probeShaderConsts->mProbeSpecularCubemapSC->getSamplerRegister(), mPrefilterArray);
GFX->setCubeArrayTexture(probeShaderConsts->mProbeIrradianceCubemapSC->getSamplerRegister(), mIrradianceArray);
if(probeShaderConsts->mProbeSpecularCubemapSC->getSamplerRegister() != -1)
GFX->setCubeArrayTexture(probeShaderConsts->mProbeSpecularCubemapSC->getSamplerRegister(), mPrefilterArray);
if(probeShaderConsts->mProbeIrradianceCubemapSC->getSamplerRegister() != -1)
GFX->setCubeArrayTexture(probeShaderConsts->mProbeIrradianceCubemapSC->getSamplerRegister(), mIrradianceArray);
}
if (probeShaderConsts->mBRDFTextureMap->isValid())

View file

@ -1,4 +1,3 @@
function Core_GameObjects::onCreate(%this)
{
}

View file

@ -10,10 +10,10 @@
canSave="true"
canSaveDynamicFields="true"
Extension="asset.taml"
Recurse="true" />
Recurse="true"/>
<AutoloadAssets
canSave="true"
canSaveDynamicFields="true"
AssetType="GameObjectAsset"
Recurse="true" />
Recurse="true"/>
</ModuleDefinition>

View file

@ -3,6 +3,6 @@
canSaveDynamicFields="true"
AssetName="AIPlayerObject"
gameObjectName="AIPlayerObject"
scriptFilePath="core/gameObjects/gameObjects/AIPlayerObject.cs"
TAMLFilePath="core/gameObjects/gameObjects/AIPlayerObject.taml"
scriptFile="AIPlayerObject.cs"
TAMLFile="AIPlayerObject.taml"
description="A basic AI Player Object example." />

View file

@ -3,6 +3,6 @@
canSaveDynamicFields="true"
AssetName="PlayerObject"
gameObjectName="PlayerObject"
scriptFilePath="core/gameObjects/gameObjects/PlayerObject.cs"
TAMLFilePath="core/gameObjects/gameObjects/PlayerObject.taml"
scriptFile="PlayerObject.cs"
TAMLFile="PlayerObject.taml"
description="A basic Player Object example." />

View file

@ -3,5 +3,5 @@
canSaveDynamicFields="true"
AssetName="soundEmitterObject"
gameObjectName="soundEmitterObject"
TAMLFilePath="core/gameObjects/gameObjects/soundEmitterObject.taml"
TAMLFile="soundEmitterObject.taml"
description="A basic sound emitter example." />

View file

@ -3,5 +3,5 @@
canSaveDynamicFields="true"
AssetName="StaticShapeObject"
gameObjectName="StaticShapeObject"
TAMLFilePath="core/gameObjects/gameObjects/staticShapeObject.taml"
TAMLFile="staticShapeObject.taml"
description="A basic static shape example." />

View file

@ -198,56 +198,6 @@ function getPrefpath()
return $prefPath;
}
function updateTSShapeLoadProgress(%progress, %msg)
{
// Check if the loading GUI is visible and use that instead of the
// separate import progress GUI if possible
/* if ( isObject(LoadingGui) && LoadingGui.isAwake() )
{
// Save/Restore load progress at the start/end of the import process
if ( %progress == 0 )
{
ColladaImportProgress.savedProgress = LoadingProgress.getValue();
ColladaImportProgress.savedText = LoadingProgressTxt.getValue();
ColladaImportProgress.msgPrefix = "Importing " @ %msg;
%msg = "Reading file into memory...";
}
else if ( %progress == 1.0 )
{
LoadingProgress.setValue( ColladaImportProgress.savedProgress );
LoadingProgressTxt.setValue( ColladaImportProgress.savedText );
}
%msg = ColladaImportProgress.msgPrefix @ ": " @ %msg;
%progressCtrl = LoadingProgress;
%textCtrl = LoadingProgressTxt;
}
else
{
//it's probably the editors using it
if(isFunction("updateToolTSShapeLoadProgress"))
{
updateToolTSShapeLoadProgress(%progress, %msg);
}
}
// Update progress indicators
if (%progress == 0)
{
%progressCtrl.setValue(0.001);
%textCtrl.setText(%msg);
}
else if (%progress != 1.0)
{
%progressCtrl.setValue(%progress);
%textCtrl.setText(%msg);
}
Canvas.repaint(33);*/
}
/// A helper function which will return the ghosted client object
/// from a server object when connected to a local server.
function serverToClientObject( %serverObject )

View file

@ -3,9 +3,17 @@ singleton Material(Grid_512_Orange)
{
mapTo = "Grid_512_orange";
diffuseColor[0] = "0.8 0.8 0.8 1";
diffuseMap[0] = "E:/Gamedev/T3DMIT/clangtest/Templates/Full/game/core/art/grids/Grid_512_orange.png";
diffuseMap[0] = "tools/base/images/512_orange.png";
specular[0] = "0.8 0.8 0.8 1";
specularPower[0] = "0.25";
specularStrength[0] = "25";
translucentBlendOp = "None";
translucentBlendOp = "Add";
smoothness[0] = "0.941176";
metalness[0] = "1";
DiffuseMapAsset0 = "StaticShapeTest:Grid_512_orange_ALBEDO";
specularStrength0 = "25";
specular0 = "0.8 0.8 0.8 1";
specularPower0 = "0.25";
emissive[0] = "1";
translucent = "1";
};

View file

@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// Autogenerated 'GBuffer Conditioner' Condition Method
//------------------------------------------------------------------------------
inline float4 autogenCondition_55070f7a(in float4 unconditionedOutput)
vec4 autogenCondition_55070f7a(vec4 unconditionedOutput)
{
// g-buffer conditioner: float4(normal.X, normal.Y, depth Hi, depth Lo)
float4 _gbConditionedOutput = float4(sqrt(half(2.0/(1.0 - unconditionedOutput.y))) * half2(unconditionedOutput.xz), 0.0, unconditionedOutput.a);
@ -18,10 +18,10 @@ inline float4 autogenCondition_55070f7a(in float4 unconditionedOutput)
//------------------------------------------------------------------------------
// Autogenerated 'GBuffer Conditioner' Uncondition Method
//------------------------------------------------------------------------------
inline float4 autogenUncondition_55070f7a(SamplerState deferredSamplerVar, Texture2D deferredTexVar, float2 screenUVVar)
float4 autogenUncondition_55070f7a(sampler2D deferredSamplerVar, float2 screenUVVar)
{
// Sampler g-buffer
float4 bufferSample = deferredTexVar.SampleLevel(deferredSamplerVar, screenUVVar,0);
float4 bufferSample = tex2Dlod(deferredSamplerVar, float4(screenUVVar,0,0));
// g-buffer unconditioner: float4(normal.X, normal.Y, depth Hi, depth Lo)
float2 _inpXY = bufferSample.xy;
float _xySQ = dot(_inpXY, _inpXY);

View file

@ -71,6 +71,9 @@ function AssetBrowser::onBeginDropFiles( %this )
%this.importAssetUnprocessedListArray.empty();
%this.importAssetFinalListArray.empty();
//prep the import control
Canvas.pushDialog(AssetImportCtrl);
AssetImportCtrl.setHidden(true);
ImportAssetTree.clear();
AssetBrowser.unprocessedAssetsCount = 0;
}
@ -270,7 +273,7 @@ function AssetBrowser::onEndDropFiles( %this )
return;
//we have assets to import, so go ahead and display the window for that now
Canvas.pushDialog(AssetImportCtrl);
AssetImportCtrl.setHidden(false);
ImportAssetWindow.visible = true;
//ImportAssetWindow.validateAssets();
ImportAssetWindow.refresh();

View file

@ -1,84 +1,84 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<EditorSettings>
<Group name="WorldEditor">
<Setting name="forceLoadDAE">0</Setting>
<Setting name="currentEditor">WorldEditorInspectorPlugin</Setting>
<Setting name="displayType">6</Setting>
<Setting name="dropType">screenCenter</Setting>
<Setting name="orthoFOV">50</Setting>
<Setting name="undoLimit">40</Setting>
<Setting name="orthoShowGrid">1</Setting>
<Group name="ObjectIcons">
<Setting name="fadeIconsStartDist">8</Setting>
<Setting name="fadeIconsEndDist">20</Setting>
<Setting name="fadeIconsStartAlpha">255</Setting>
<Setting name="fadeIconsEndAlpha">0</Setting>
<Setting name="fadeIcons">1</Setting>
</Group>
<Group name="Color">
<Setting name="dragRectColor">255 255 0 255</Setting>
<Setting name="objSelectColor">255 0 0 255</Setting>
<Setting name="selectionBoxColor">255 255 0 255</Setting>
<Setting name="objMouseOverColor">0 255 0 255</Setting>
<Setting name="objMouseOverSelectColor">0 0 255 255</Setting>
<Setting name="popupBackgroundColor">100 100 100 255</Setting>
<Setting name="objectTextColor">White</Setting>
</Group>
<Group name="Render">
<Setting name="renderPopupBackground">1</Setting>
<Setting name="renderSelectionBox">1</Setting>
<Setting name="showMousePopupInfo">1</Setting>
<Setting name="renderObjHandle">1</Setting>
<Setting name="renderObjText">1</Setting>
</Group>
<Group name="Images">
<Setting name="selectHandle">tools/worldEditor/images/SelectHandle</Setting>
<Setting name="defaultHandle">tools/worldEditor/images/DefaultHandle</Setting>
<Setting name="lockedHandle">tools/worldEditor/images/LockedHandle</Setting>
</Group>
<Group name="Grid">
<Setting name="gridSize">1</Setting>
<Setting name="gridSnap">0</Setting>
<Setting name="gridColor">102 102 102 100</Setting>
<Setting name="gridOriginColor">255 255 255 100</Setting>
<Setting name="gridMinorColor">51 51 51 100</Setting>
</Group>
<Group name="Tools">
<Setting name="snapSoftSize">2</Setting>
<Setting name="snapGround">0</Setting>
<Setting name="boundingBoxCollision">0</Setting>
<Setting name="objectsUseBoxCenter">1</Setting>
<Setting name="dropAtScreenCenterScalar">1</Setting>
<Setting name="dropAtScreenCenterMax">100</Setting>
<Setting name="snapSoft">0</Setting>
</Group>
<Group name="Docs">
<Setting name="forumURL">http://www.garagegames.com/products/torque-3d/forums</Setting>
<Setting name="documentationReference">../../../Documentation/Torque 3D - Script Manual.chm</Setting>
<Setting name="documentationURL">http://www.garagegames.com/products/torque-3d/documentation/user</Setting>
<Setting name="documentationLocal">../../../Documentation/Official Documentation.html</Setting>
</Group>
</Group>
<Group name="NavEditor">
<Setting name="SpawnClass">AIPlayer</Setting>
</Group>
<Group name="AxisGizmo">
<Setting name="axisGizmoMaxScreenLen">100</Setting>
<Setting name="mouseScaleScalar">0.8</Setting>
<Setting name="rotationSnap">15</Setting>
<Setting name="renderWhenUsed">0</Setting>
<Setting name="snapRotations">0</Setting>
<Setting name="renderInfoText">1</Setting>
<Setting name="mouseRotateScalar">0.8</Setting>
<Setting name="axisGizmoMaxScreenLen">100</Setting>
<Setting name="mouseScaleScalar">0.8</Setting>
<Group name="Grid">
<Setting name="renderPlane">0</Setting>
<Setting name="gridSize">10 10 10</Setting>
<Setting name="planeDim">500</Setting>
<Setting name="renderPlaneHashes">0</Setting>
<Setting name="gridColor">255 255 255 20</Setting>
<Setting name="snapToGrid">0</Setting>
<Setting name="gridSize">10 10 10</Setting>
<Setting name="renderPlane">0</Setting>
<Setting name="renderPlaneHashes">0</Setting>
</Group>
</Group>
<Group name="WorldEditor">
<Setting name="displayType">6</Setting>
<Setting name="dropType">screenCenter</Setting>
<Setting name="orthoFOV">50</Setting>
<Setting name="undoLimit">40</Setting>
<Setting name="orthoShowGrid">1</Setting>
<Setting name="forceLoadDAE">0</Setting>
<Setting name="currentEditor">WorldEditorInspectorPlugin</Setting>
<Group name="Grid">
<Setting name="gridSnap">0</Setting>
<Setting name="gridMinorColor">51 51 51 100</Setting>
<Setting name="gridColor">102 102 102 100</Setting>
<Setting name="gridSize">1</Setting>
<Setting name="gridOriginColor">255 255 255 100</Setting>
</Group>
<Group name="Docs">
<Setting name="forumURL">http://www.garagegames.com/products/torque-3d/forums</Setting>
<Setting name="documentationURL">http://www.garagegames.com/products/torque-3d/documentation/user</Setting>
<Setting name="documentationReference">../../../Documentation/Torque 3D - Script Manual.chm</Setting>
<Setting name="documentationLocal">../../../Documentation/Official Documentation.html</Setting>
</Group>
<Group name="Render">
<Setting name="renderObjText">1</Setting>
<Setting name="showMousePopupInfo">1</Setting>
<Setting name="renderObjHandle">1</Setting>
<Setting name="renderSelectionBox">1</Setting>
<Setting name="renderPopupBackground">1</Setting>
</Group>
<Group name="Color">
<Setting name="objSelectColor">255 0 0 255</Setting>
<Setting name="selectionBoxColor">255 255 0 255</Setting>
<Setting name="objectTextColor">255 255 255 255</Setting>
<Setting name="popupBackgroundColor">100 100 100 255</Setting>
<Setting name="objMouseOverSelectColor">0 0 255 255</Setting>
<Setting name="dragRectColor">255 255 0 255</Setting>
<Setting name="objMouseOverColor">0 255 0 255</Setting>
</Group>
<Group name="ObjectIcons">
<Setting name="fadeIcons">1</Setting>
<Setting name="fadeIconsEndAlpha">0</Setting>
<Setting name="fadeIconsStartAlpha">255</Setting>
<Setting name="fadeIconsEndDist">20</Setting>
<Setting name="fadeIconsStartDist">8</Setting>
</Group>
<Group name="Images">
<Setting name="selectHandle">tools/worldEditor/images/SelectHandle</Setting>
<Setting name="lockedHandle">tools/worldEditor/images/LockedHandle</Setting>
<Setting name="defaultHandle">tools/worldEditor/images/DefaultHandle</Setting>
</Group>
<Group name="Tools">
<Setting name="objectsUseBoxCenter">1</Setting>
<Setting name="snapGround">0</Setting>
<Setting name="boundingBoxCollision">0</Setting>
<Setting name="snapSoft">0</Setting>
<Setting name="snapSoftSize">2</Setting>
<Setting name="dropAtScreenCenterMax">100</Setting>
<Setting name="dropAtScreenCenterScalar">1</Setting>
</Group>
</Group>
<Group name="NavEditor">
<Setting name="SpawnClass">AIPlayer</Setting>
</Group>
<Group name="LevelInformation">
<Setting name="levelsDirectory">data/FPSGameplay/levels</Setting>
<Group name="levels">

View file

@ -854,6 +854,11 @@ function WorldEditorPlugin::onActivated( %this )
EWorldEditor.makeFirstResponder(true);
EditorTree.open($scenesRootGroup,true);
EWCreatorWindow.setNewObjectGroup(getScene(0));
EditorTree.expandItem(1);
EditorTree.buildVisibleTree(true);
EditorTree.expandItem(2);
EditorTree.buildVisibleTree(true);
EWorldEditor.syncGui();

View file

@ -29,7 +29,7 @@ elseif( CMAKE_CXX_SIZEOF_DATA_PTR EQUAL 4 )
endif()
if(NOT TORQUE_TEMPLATE)
set(TORQUE_TEMPLATE "Full" CACHE STRING "the template to use")
set(TORQUE_TEMPLATE "BaseGame" CACHE STRING "the template to use")
endif()
if(NOT TORQUE_APP_DIR)
set(TORQUE_APP_DIR "${CMAKE_SOURCE_DIR}/My Projects/${TORQUE_APP_NAME}")

View file

@ -338,6 +338,7 @@ addPath("${srcDir}/T3D/sfx")
addPath("${srcDir}/T3D/gameBase")
addPath("${srcDir}/T3D/turret")
addPath("${srcDir}/T3D/lighting")
addPath("${srcDir}/T3D/gameObjects")
addPathRec("${srcDir}/T3D/components/")
addPathRec("${srcDir}/T3D/systems")