public void Initialize_AdvanceLight_LightViz4() { Torque_Class_Helper tch = new Torque_Class_Helper("ShaderData", "AL_ShadowVisualizeShader"); tch.PropsAddString("DXVertexShaderFile", "shaders/common/guiMaterialV.hlsl"); tch.PropsAddString("DXPixelShaderFile", "shaders/common/lighting/advanced/dbgShadowVisualizeP.hlsl"); tch.PropsAddString("OGLVertexShaderFile", "shaders/common/gl/guiMaterialV.glsl"); tch.PropsAddString("OGLPixelShaderFile", "shaders/common/lighting/advanced/gl/dbgShadowVisualizeP.glsl"); tch.Props.Add("pixVersion", "2.0"); tch.Create(); tch = new Torque_Class_Helper("CustomMaterial", "AL_ShadowVisualizeMaterial"); tch.Props.Add("shader", "AL_ShadowVisualizeShader"); tch.Props.Add("stateBlock", "AL_DepthVisualizeState"); tch.PropsAddString(@"sampler[""shadowMap""]", "#AL_ShadowVizTexture"); tch.PropsAddString(@"sampler[""depthViz""]", "depthviz"); tch.Props.Add("pixVersion", "2.0"); tch.Create(); TorqueSingleton ts = new TorqueSingleton("GuiControlProfile", "AL_ShadowLabelTextProfile"); ts.PropsAddString("fontColor", "0 0 0"); ts.Props.Add("autoSizeWidth", "true"); ts.Props.Add("autoSizeHeight", "true"); ts.PropsAddString("justify", "left"); ts.Props.Add("fontSize", "14"); ts.Create(); }
public bool CreateAndConnectToLocalServer(string serverType, string level) { if (!CreateServer(serverType, level)) { return(false); } coGameConnection client = new Torque_Class_Helper("GameConnection", "ServerConnection").Create(); client.setConnectArgs(sGlobal["$pref::Player::Name"]); client.setJoinPassword(sGlobal["$Client::Password"]); string result = client.connectLocal(); if (result != "") { client.delete(); DestroyServer(); return(false); } return(true); }
public void createAI(int count) { if (lastcount > 0) { console.error("Mobs already spawned"); return; } lastcount = count; int team = 0; for (int i = 0; i < count; i++) { team++; if (team == 3) { team = 1; } coScriptObject MobRoot = new Torque_Class_Helper("ScriptObject", "Mob" + i.AsString()).Create().AsString(); MobRoot["player"] = ""; MobRoot["aiteam"] = team.AsString(); ((coSimSet)"rootgroup").pushToBack(MobRoot); Util._schedule((i * 100).AsString(), "0", "spawnAI", MobRoot); } using (BackgroundWorker bwr_AIThought = new BackgroundWorker()) { bwr_AIThought.DoWork += bwr_AIThought_DoWork; bwr_AIThought.RunWorkerAsync(); } }
public string PickCameraSpawnPoint(string spawnGroups) { coSimObject spawnpoint = null; String[] lspawngroups = spawnGroups.Split(' '); foreach (coSimSet group in lspawngroups) { if (!group.isObject()) { continue; } spawnpoint = group.getRandom(); if (spawnpoint.isObject()) { return(spawnpoint); } } coSpawnSphere DefaultCameraSpawnSphere = "DefaultCameraSpawnSphere"; if (!DefaultCameraSpawnSphere.isObject()) { Torque_Class_Helper spawn = new Torque_Class_Helper("SpawnSphere", "DefaultCameraSpawnSphere"); spawn.Props.Add("dataBlock", "SpawnSphereMarker"); spawn.PropsAddString("spawnClass", Game__DefaultCameraClass); spawn.PropsAddString("spawnDatablock", Game__DefaultCameraDataBlock); coSpawnSphere spawnobj = spawn.Create(); ((coSimSet)"MissionCleanup").pushToBack(spawnobj); } return(DefaultCameraSpawnSphere); }
public void initialize_scattersky() { Torque_Class_Helper tch = new Torque_Class_Helper("GFXStateBlockData", "ScatterSkySBData"); tch.Props.Add("cullDefined", "true"); tch.PropsAddString("cullMode", "GFXCullNone"); tch.Props.Add("zDefined", "true"); tch.Props.Add("zEnable", "true"); tch.Props.Add("zWriteEnable", "false"); tch.Props.Add("zFunc", "GFXCmpLessEqual"); tch.Props.Add("samplersDefined", "true"); tch.Props.Add("samplerStates[0]", "SamplerClampLinear"); tch.Props.Add("samplerStates[1]", "SamplerClampLinear"); tch.Props.Add("vertexColorEnable", "true"); tch.Create(); TorqueSingleton ts = new TorqueSingleton("ShaderData", "ScatterSkyShaderData"); ts.PropsAddString("DXVertexShaderFile", "shaders/common/scatterSkyV.hlsl"); ts.PropsAddString("DXPixelShaderFile", "shaders/common/scatterSkyP.hlsl"); ts.PropsAddString("OGLVertexShaderFile", "shaders/common/gl/scatterSkyV.glsl"); ts.PropsAddString("OGLPixelShaderFile", "shaders/common/gl/scatterSkyP.glsl"); ts.Props.Add("pixVersion", "2.0"); ts.Create(); }
public string StaticShapeDataCreate(coSimDataBlock data) { Torque_Class_Helper tch = new Torque_Class_Helper("StaticShape"); tch.Props.Add("dataBlock", data); coSimObject obj = tch.Create(); return(obj); }
public coItem ItemDataCreateItem(coItemData datablock) { Torque_Class_Helper tch = new Torque_Class_Helper("Item"); tch.Props.Add("dataBlock", datablock); tch.Props.Add("static", "true"); tch.Props.Add("rotate", "true"); return(tch.Create()); }
public void AddObjectTo_MobSearchGroup(coPlayer obj, int team) { coSimSet MobSearchGroup = "MobSearchGroup_" + team; if (!MobSearchGroup.isObject()) { MobSearchGroup = new Torque_Class_Helper("SimSet", "MobSearchGroup_" + team).Create(); } MobSearchGroup.add(obj); }
public void initializeShadowMaps() { Torque_Class_Helper tch = new Torque_Class_Helper("ShaderData", "BlurDepthShader"); tch.PropsAddString("DXVertexShaderFile", "shaders/common/lighting/shadowMap/boxFilterV.hlsl"); tch.PropsAddString("DXPixelShaderFile", "shaders/common/lighting/shadowMap/boxFilterP.hlsl"); tch.PropsAddString("OGLVertexShaderFile", "shaders/common/lighting/shadowMap/gl/boxFilterV.glsl"); tch.PropsAddString("OGLPixelShaderFile", "shaders/common/lighting/shadowMap/gl/boxFilterP.glsl"); tch.Props.Add("pixVersion", "2.0"); tch.Create(); }
public void ClientCmdPlayTeleportEffect(Point3F position, coSimDataBlock effectDataBlock) { if (!effectDataBlock.isObject()) { return; } Torque_Class_Helper tch = new Torque_Class_Helper("Explosion"); tch.Props.Add("position", '"' + position.AsString() + '"'); tch.Props.Add("datablock", effectDataBlock); tch.Create(); }
public void connect(string server) { iGlobal["$pref::Net::PacketRateToServer"] = 32; iGlobal["$pref::Net::PacketSize"] = 200; iGlobal["$platform::timeManagerProcessInterval"] = 1; coGameConnection conn = new Torque_Class_Helper("GameConnection", "ServerConnection").Create().AsString(); ((coSimSet)"rootgroup").pushToBack(conn); conn.setConnectArgs(sGlobal["$pref::Player::Name"]); conn.setJoinPassword(sGlobal["$Client::Password"]); conn.connect(server); }
public coAIPlayer AiPlayerSpawn(string name, TransformF spawnPoint) { Torque_Class_Helper tch = new Torque_Class_Helper("AiPlayer"); tch.Props.Add("dataBlock", "DemoPlayer"); tch.Props.Add("path", ""); coAIPlayer npc = tch.Create(); ((coSimSet)"MissionCleanup").pushToBack(npc); npc.setShapeName(name); npc.setTransform(spawnPoint); return(npc); }
public void DoManualDetonation(coSceneObject obj) { Torque_Class_Helper tch = new Torque_Class_Helper("Item", ""); tch.Props.Add("dataBlock", "Detonade"); coSceneObject nade = tch.Create(); ((coSimSet)"MissionCleanUp").pushToBack(nade); nade.setTransform(obj.getTransform()); nade["sourceObject"] = obj["SourceObject"]; nade.schedule("50", "setDamageState", "Destroyed"); obj.delete(); }
public string MissionGroupRespawnTurret(coSimSet thisobj, coTurretShapeData datablock, coTurretShape classname, TransformF transform, bool isstatic, bool respawn) { Torque_Class_Helper turret = new Torque_Class_Helper(classname, ""); turret.Props.Add("datablock", datablock); turret.Props.Add("static", isstatic.AsString()); turret.Props.Add("respawn", respawn.AsString()); coTurretShape turretid = turret.Create(); turretid.setTransform(transform); ((coSimSet)"MissioinGroup").pushToBack(turretid); return(turretid); }
public void Initialize_AdvanceLight_LightViz() { Torque_Class_Helper tch = new Torque_Class_Helper("GFXStateBlockData", "AL_DepthVisualizeState"); tch.Props.Add("zDefined", "true"); tch.Props.Add("zEnable", "false"); tch.Props.Add("zWriteEnable", "false"); tch.Props.Add("samplersDefined", "true"); tch.Props.Add("samplerStates[0]", "SamplerClampPoint"); // depth tch.Props.Add("samplerStates[1]", "SamplerClampLinear"); // viz color lookup tch.Create(); tch = new Torque_Class_Helper("GFXStateBlockData", "AL_DefaultVisualizeState"); tch.Props.Add("blendDefined", "true"); tch.Props.Add("blendEnable", "true"); tch.Props.Add("blendSrc", "GFXBlendSrcAlpha"); tch.Props.Add("blendDest", "GFXBlendInvSrcAlpha"); tch.Props.Add("zDefined", "true"); tch.Props.Add("zEnable", "false"); tch.Props.Add("zWriteEnable", "false"); tch.Props.Add("samplersDefined", "true"); tch.Props.Add("samplerStates[0]", "SamplerClampPoint"); // #prepass tch.Props.Add("samplerStates[1]", "SamplerClampLinear"); // depthviz tch.Create(); tch = new Torque_Class_Helper("ShaderData", "AL_DepthVisualizeShader"); tch.PropsAddString("DXVertexShaderFile ", "shaders/common/postFx/postFxV.hlsl"); tch.PropsAddString("DXPixelShaderFile", "shaders/common/lighting/advanced/dbgDepthVisualizeP.hlsl"); tch.PropsAddString("OGLVertexShaderFile", "shaders/common/postFx/postFxV.glsl"); tch.PropsAddString("OGLPixelShaderFile", "shaders/common/lighting/advanced/gl/dbgDepthVisualizeP.glsl"); tch.PropsAddString("samplerNames[0]", "prepassBuffer"); tch.PropsAddString("samplerNames[1]", "depthViz"); tch.Props.Add("pixVersion", "2.0"); tch.Create(); TorqueSingleton ts = new TorqueSingleton("PostEffect", "AL_DepthVisualize"); ts.Props.Add("shader", "AL_DepthVisualizeShader"); ts.Props.Add("stateBlock", "AL_DefaultVisualizeState"); ts.PropsAddString("texture[0]", "#prepass"); ts.PropsAddString("texture[1]", "depthviz"); ts.PropsAddString("target", "$backBuffer"); ts.Props.Add("renderPriority", "9999"); ts.Create(); }
public void commonMaterialData_Init() { iGlobal["$scroll"] = 1; iGlobal["$rotate"] = 2; iGlobal["$wave"] = 4; iGlobal["$scale"] = 8; iGlobal["$sequence"] = 16; // Common stateblock definitions Torque_Class_Helper tch = new Torque_Class_Helper("GFXSamplerStateData", "SamplerClampLinear"); tch.Props.Add("textureColorOp", "GFXTOPModulate"); tch.Props.Add("addressModeU", "GFXAddressClamp"); tch.Props.Add("addressModeV", "GFXAddressClamp"); tch.Props.Add("addressModeW", "GFXAddressClamp"); tch.Props.Add("magFilter", "GFXTextureFilterLinear"); tch.Props.Add("minFilter", "GFXTextureFilterLinear"); tch.Props.Add("mipFilter", "GFXTextureFilterLinear"); tch.Create(); tch = new Torque_Class_Helper("GFXSamplerStateData", "SamplerClampPoint"); tch.Props.Add("textureColorOp", "GFXTOPModulate"); tch.Props.Add("addressModeU", "GFXAddressClamp"); tch.Props.Add("addressModeV", "GFXAddressClamp"); tch.Props.Add("addressModeW", "GFXAddressClamp"); tch.Props.Add("magFilter", "GFXTextureFilterPoint"); tch.Props.Add("minFilter", "GFXTextureFilterPoint"); tch.Props.Add("mipFilter", "GFXTextureFilterPoint"); tch.Create(); tch = new Torque_Class_Helper("GFXSamplerStateData", "SamplerWrapLinear"); tch.Props.Add("textureColorOp", "GFXTOPModulate"); tch.Props.Add("addressModeU", "GFXTextureAddressWrap"); tch.Props.Add("addressModeV", "GFXTextureAddressWrap"); tch.Props.Add("addressModeW", "GFXTextureAddressWrap"); tch.Props.Add("magFilter", "GFXTextureFilterLinear"); tch.Props.Add("minFilter", "GFXTextureFilterLinear"); tch.Props.Add("mipFilter", "GFXTextureFilterLinear"); tch.Create(); tch = new Torque_Class_Helper("GFXSamplerStateData", "SamplerWrapPoint"); tch.Props.Add("textureColorOp", "GFXTOPModulate"); tch.Props.Add("addressModeU", "GFXTextureAddressWrap"); tch.Props.Add("addressModeV", "GFXTextureAddressWrap"); tch.Props.Add("addressModeW", "GFXTextureAddressWrap"); tch.Props.Add("magFilter", "GFXTextureFilterPoint"); tch.Props.Add("minFilter", "GFXTextureFilterPoint"); tch.Props.Add("mipFilter", "GFXTextureFilterPoint"); tch.Create(); }
public string RocketLauncherImageOnAltFire(coItem thisobj, coPlayer obj, string slot) { int currentAmmo = ShapeBaseShapeBaseGetInventory(obj, (thisobj["ammo"])); if (currentAmmo < thisobj["loadCount"].AsInt()) { thisobj["loadCount"] = currentAmmo.AsString(); } coProjectile projectile = null; for (int shotCount = 0; shotCount < thisobj["loadCount"].AsInt(); shotCount++) { // Decrement inventory ammo. The image's ammo state is updated // automatically by the ammo inventory hooks. ShapeBaseShapeBaseDecInventory(obj, (thisobj["ammo"]), 1); // We fire our weapon using the straight ahead aiming point of the gun // We'll need to "skew" the projectile a little bit. We start by getting // the straight ahead aiming point of the gun Point3F vec = obj.getMuzzleVector(slot.AsInt()); Random r = new Random(); TransformF matrix = new TransformF(); matrix.MPosition.x = (float)((r.NextDouble() - .5) * 2 * Math.PI * 0.008); matrix.MPosition.y = (float)((r.NextDouble() - .5) * 2 * Math.PI * 0.008); matrix.MPosition.z = (float)((r.NextDouble() - .5) * 2 * Math.PI * 0.008); TransformF mat = math.MatrixCreateFromEuler(matrix); // Which we'll use to alter the projectile's initial vector with TransformF muzzleVector = math.MatrixMulVector(mat, vec); // Get the player's velocity, we'll then add it to that of the projectile TransformF objectVelocity = new TransformF(obj.getVelocity()); muzzleVector = muzzleVector.vectorScale(thisobj["projectile.muzzleVelocity"].AsFloat()); objectVelocity = objectVelocity.vectorScale(thisobj["projectile.velInheritFactor"].AsFloat()); TransformF muzzleVelocity = muzzleVector + objectVelocity; Torque_Class_Helper tch = new Torque_Class_Helper(thisobj["projectileType"], ""); tch.Props.Add("dataBlock", thisobj["projectile"]); tch.Props.Add("initialVelocity", '"' + muzzleVelocity.ToString() + '"'); tch.Props.Add("initialPosition", '"' + obj.getMuzzlePoint(slot.AsInt()).AsString() + '"'); tch.Props.Add("sourceObject", obj); tch.Props.Add("sourceSlot", slot); tch.Props.Add("client", obj["client"]); projectile = tch.Create(); ((coSimSet)"MissionCleanup").pushToBack(projectile); } return(projectile); }
public bool sfxAutodetect() { // Get all the available devices. string devices = Util.sfxGetAvailableDevices(); // Collect and sort the devices by preferentiality. int count = Util.getRecordCount(devices); coArrayObject deviceTrySequence = new Torque_Class_Helper("ArrayObject").Create().AsString(); for (int i = 0; i < count; i++) { string info = Util.getRecord(devices, i); string provider = Util.getField(info, 0); deviceTrySequence.push_back(provider, info); } deviceTrySequence.sortfk("sfxCompareProvider"); // Try the devices in order. count = deviceTrySequence.count(); for (int i = 0; i < count; i++) { string provider = deviceTrySequence.getKey(i); string info = deviceTrySequence.getValue(i); sGlobal["$pref::SFX::provider"] = provider; sGlobal["$pref::SFX::device"] = Util.getField(info, 1); sGlobal["$pref::SFX::useHardware"] = Util.getField(info, 2); // By default we've decided to avoid hardware devices as // they are buggy and prone to problems. bGlobal["$pref::SFX::useHardware"] = false; if (!sfxInit()) { continue; } bGlobal["$pref::SFX::autoDetect"] = false; deviceTrySequence.delete(); return(true); } // Found no suitable device. console.error("sfxAutodetect - Could not initialize a valid SFX device."); sGlobal["$pref::SFX::provider"] = ""; sGlobal["$pref::SFX::device"] = ""; sGlobal["$pref::SFX::useHardware"] = ""; deviceTrySequence.delete(); return(false); }
public void HelpFileListonSelect(string thisobj, string row) { coFileObject fo = new Torque_Class_Helper("FileObject").Create().AsString(); fo.openForRead(console.GetVarString(thisobj + ".fileName[" + row + "]")); string text = ""; while (!fo.isEOF()) { text += fo.readLine() + "\n"; } fo.close(); console.Call("HelpText", "setText", new[] { text }); }
public UInt32 AiPlayerAiPlayerSpawn(string name, TransformF spawnpoint) { Torque_Class_Helper npcScriptObject = new Torque_Class_Helper("AIPlayer", ""); npcScriptObject.Props.Add("dataBlock", "DemoPlayer"); npcScriptObject.Props.Add("path", ""); coAIPlayer npc = npcScriptObject.Create(); if (npc != 0) { ((coSimSet)"MissionCleanup").pushToBack(npc); npc.setShapeName(name); npc.setTransform(spawnpoint); // console.SetVar(npcID.ToString(), 1); } return(npc); }
public string ProximityMineDataOnThrow(coItemData datablock, coPlayer player, int amount) { ShapeBaseShapeBaseDecInventory(player, datablock, 1); Torque_Class_Helper tch = new Torque_Class_Helper("ProximityMine", ""); tch.Props.Add("datablock", datablock); tch.Props.Add("sourceObject", player); tch.Props.Add("rotation", string.Format("\"0 0 1 {0} \"", new Random().NextDouble() * 360)); tch.Props.Add("static", "false"); tch.Props.Add("client", player["client"]); coProximityMine pm = (tch.Create()); ((coSimSet)"MissionCleanup").pushToBack(pm); return(pm); }
public string loadFileText(string file) { coFileObject fo = new Torque_Class_Helper("FileObject").Create(); fo.openForRead(file); string text = ""; while (!fo.isEOF()) { text += fo.readLine(); if (!fo.isEOF()) { text += "\n"; } } fo.delete(); return(text); }
public void Initialize_ArtGuiCursors() { if (console.GetVarString("$platform") == "macos") { Torque_Class_Helper tch = new Torque_Class_Helper("GuiCursor", "DefaultCursor"); tch.PropsAddString("hotSpot", "4 4"); tch.PropsAddString("renderOffset", " 0 0"); tch.PropsAddString("bitmapName", "./core/art/gui/images/macCursor"); tch.CreateDB(); } else { Torque_Class_Helper tch = new Torque_Class_Helper("GuiCursor", "DefaultCursor"); tch.PropsAddString("hotSpot", "1 1"); tch.PropsAddString("renderOffset", " 0 0"); tch.PropsAddString("bitmapName", "./core/art/gui/images/defaultCursor"); tch.CreateDB(); } }
public void ResetMission() { console.print("*** MISSION RESET"); // Remove any temporary mission objects if (((coSimSet)"MissionCleanup").isObject()) { ((coSimSet)"MissionCleanup").delete(); } sGlobal["$instantGroup"] = sGlobal["ServerGroup"]; coSimSet MissionCleanup = new Torque_Class_Helper("SimGroup", "MissionCleanup").Create(); MissionCleanup["$instantGroup"] = MissionCleanup; console.clearServerPaths(); console.error("-------------> Client Group Count = " + ClientGroup.Count); }
public void Initialize_AdvanceLight_LightViz3() { Torque_Class_Helper tch = new Torque_Class_Helper("ShaderData", "AL_LightSpecularVisualizeShader"); tch.PropsAddString("DXVertexShaderFile", "shaders/common/postFx/postFxV.hlsl"); tch.PropsAddString("DXPixelShaderFile", "shaders/common/lighting/advanced/dbgLightSpecularVisualizeP.hlsl"); tch.PropsAddString("OGLVertexShaderFile", "shaders/common/postFx/postFxV.glsl"); tch.PropsAddString("OGLPixelShaderFile", "shaders/common/lighting/advanced/dl/dbgLightSpecularVisualizeP.glsl"); tch.PropsAddString("samplerNames[0]", "lightInfoBuffer"); tch.Props.Add("pixVersion", "2.0"); tch.Create(); TorqueSingleton ts = new TorqueSingleton("PostEffect", "AL_LightSpecularVisualize"); ts.Props.Add("shader", "AL_LightSpecularVisualizeShader"); ts.PropsAddString("stateBlock", "AL_DefaultVisualizeState"); ts.PropsAddString("texture[0]", "#lightinfo"); ts.PropsAddString("target", "$backBuffer"); ts.Props.Add("renderPriority", "9999"); ts.Create(); }
public void onActivateBasicLM() { // If HDR is enabled... enable the special format token. if ((sGlobal["$platform"] == "macos") || ((coPostEffect)"HDRPostFx").isEnabledX()) { ((coGFXStateBlockData)"AL_FormatToken").call("enable"); } // Create render pass for projected shadow. coRenderPassManager BL_ProjectedShadowRPM = new Torque_Class_Helper("RenderPassManager", "BL_ProjectedShadowRPM").Create(); // Create the mesh bin and add it to the manager. coRenderMeshMgr meshbin = new Torque_Class_Helper("RenderMeshMgr").Create(); BL_ProjectedShadowRPM.addManager(meshbin); // Add both to the root group so that it doesn't // end up in the MissionCleanup instant group. coSimSet rootGroup = "RootGroup"; rootGroup.pushToBack(BL_ProjectedShadowRPM); rootGroup.pushToBack(meshbin); }
public string ItemDataOnThrow(coItemData datablock, coPlayer player, int amount) { if (amount == 0) { amount = 1; } if (amount > datablock["maxInventory"].AsInt()) { amount = datablock["maxInventory"].AsInt(); } if (!amount.AsBool()) { return("0"); } ShapeBaseShapeBaseDecInventory(player, datablock, amount); // Construct the actual object in the world, and add it to // the mission group so it's cleaned up when the mission is // done. The object is given a random z rotation. Torque_Class_Helper tch = new Torque_Class_Helper("Item", ""); tch.Props.Add("datablock", datablock); tch.Props.Add("rotation", @"""0 0 1 " + (new Random().Next(0, 360)) + @""""); tch.Props.Add("count", amount.AsString()); coItem item = tch.Create(); ((coSimSet)"MissionGroup").pushToBack(item); ItemschedulePop(item); return(item); }
public void initRenderManager() { //con.error("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!RENDOR_MANAGER_INITIALIZED!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); console.Eval(@"assert(!isObject(""DiffuseRenderPassManager""), ""initRenderManager() - DiffuseRenderPassManager already initialized!"")"); new Torque_Class_Helper("RenderPassManager", "DiffuseRenderPassManager").Create(); // This token, and the associated render managers, ensure that driver MSAA // does not get used for Advanced Lighting renders. The 'AL_FormatResolve' // PostEffect copies the result to the backbuffer. #region new RenderFormatToken(AL_FormatToken) Torque_Class_Helper tch = new Torque_Class_Helper("RenderFormatToken", "AL_FormatToken"); tch.PropsAddString("enabled", "false"); tch.PropsAddString("format", "GFXFormatR8G8B8A8"); tch.PropsAddString("depthFormat", "GFXFormatD24S8"); tch.Props.Add("aaLevel", "0"); // -1 = match backbuffer // The contents of the back buffer before this format token is executed // is provided in $inTex tch.PropsAddString("copyEffect", "AL_FormatCopy"); // The contents of the render target created by this format token is // provided in $inTex tch.PropsAddString("resolveEffect", "AL_FormatCopy"); tch.Create(); #endregion #region DiffuseRenderPassManager.addManager( new RenderPassStateBin() { renderOrder = 0.001; stateToken = AL_FormatToken; } ); Torque_Class_Helper tchb = new Torque_Class_Helper("RenderPassStateBin"); tchb.Props.Add("renderOrder", "0.001"); tchb.Props.Add("stateToken", "AL_FormatToken"); coRenderPassManager DiffuseRenderPassManager = "DiffuseRenderPassManager"; DiffuseRenderPassManager.addManager(tchb.Create().AsString()); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); #endregion // We really need to fix the sky to render after all the // meshes... but that causes issues in reflections. #region DiffuseRenderPassManager.addManager( new RenderObjectMgr() { bintype = "Sky"; renderOrder = 0.1; processAddOrder = 0.1; } ); tchb = new Torque_Class_Helper("RenderObjectMgr"); tchb.PropsAddString("bintype", "Sky"); tchb.Props.Add("renderOrder", "0.1"); tchb.Props.Add("processAddOrder", "0.1"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderObjectMgr() { bintype = "Begin"; renderOrder = 0.2; processAddOrder = 0.2; } ); tchb = new Torque_Class_Helper("RenderObjectMgr"); tchb.PropsAddString("bintype", "Begin"); tchb.Props.Add("renderOrder", "0.2"); tchb.Props.Add("processAddOrder", "0.2"); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion // Normal mesh rendering. #region DiffuseRenderPassManager.addManager( new RenderMeshMgr() { bintype = "Interior"; renderOrder = 0.3; processAddOrder = 0.3; } ); tchb = new Torque_Class_Helper("RenderMeshMgr"); tchb.PropsAddString("bintype", "Interior"); tchb.Props.Add("renderOrder", "0.3"); tchb.Props.Add("processAddOrder", "0.3"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderTerrainMgr() { renderOrder = 0.4; processAddOrder = 0.4; } ); tchb = new Torque_Class_Helper("RenderTerrainMgr"); tchb.Props.Add("renderOrder", "0.4"); tchb.Props.Add("processAddOrder", "0.4"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderMeshMgr() { bintype = "Mesh"; renderOrder = 0.5; processAddOrder = 0.5; } ); tchb = new Torque_Class_Helper("RenderMeshMgr"); tchb.PropsAddString("bintype", "Mesh"); tchb.Props.Add("renderOrder", "0.5"); tchb.Props.Add("processAddOrder", "0.5"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderImposterMgr() { renderOrder = 0.56; processAddOrder = 0.56; } ); tchb = new Torque_Class_Helper("RenderImposterMgr"); tchb.Props.Add("renderOrder", "0.56"); tchb.Props.Add("processAddOrder", "0.56"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderObjectMgr() { bintype = "Object"; renderOrder = 0.6; processAddOrder = 0.6; } ); tchb = new Torque_Class_Helper("RenderObjectMgr"); tchb.PropsAddString("bintype", "Object"); tchb.Props.Add("renderOrder", "0.6"); tchb.Props.Add("processAddOrder", "0.6"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderObjectMgr() { bintype = "Shadow"; renderOrder = 0.7; processAddOrder = 0.7; } ); tchb = new Torque_Class_Helper("RenderObjectMgr"); tchb.PropsAddString("bintype", "Shadow"); tchb.Props.Add("renderOrder", "0.7"); tchb.Props.Add("processAddOrder", "0.7"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderMeshMgr() { bintype = "Decal"; renderOrder = 0.8; processAddOrder = 0.8; } ); tchb = new Torque_Class_Helper("RenderMeshMgr"); tchb.PropsAddString("bintype", "Decal"); tchb.Props.Add("renderOrder", "0.8"); tchb.Props.Add("processAddOrder", "0.8"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderOcclusionMgr() { bintype = "Occluder"; renderOrder = 0.9; processAddOrder = 0.9; } ); tchb = new Torque_Class_Helper("RenderOcclusionMgr"); tchb.PropsAddString("bintype", "Occluder"); tchb.Props.Add("renderOrder", "0.9"); tchb.Props.Add("processAddOrder", "0.9"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion // We now render translucent objects that should handle // their own fogging and lighting. // Note that the fog effect is triggered before this bin. #region DiffuseRenderPassManager.addManager( new RenderObjectMgr(ObjTranslucentBin) { bintype = "ObjectTranslucent"; renderOrder = 1.0; processAddOrder = 1.0; } ); tchb = new Torque_Class_Helper("RenderObjectMgr", "ObjTranslucentBin"); tchb.PropsAddString("bintype", "ObjectTranslucent"); tchb.Props.Add("renderOrder", "1"); tchb.Props.Add("processAddOrder", "1"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderObjectMgr() { bintype = "Water"; renderOrder = 1.2; processAddOrder = 1.2; } ); tchb = new Torque_Class_Helper("RenderObjectMgr"); tchb.PropsAddString("bintype", "Water"); tchb.Props.Add("renderOrder", "1.2"); tchb.Props.Add("processAddOrder", "1.2"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderObjectMgr() { bintype = "Foliage"; renderOrder = 1.3; processAddOrder = 1.3; } ); tchb = new Torque_Class_Helper("RenderObjectMgr"); tchb.PropsAddString("bintype", "Foliage"); tchb.Props.Add("renderOrder", "1.3"); tchb.Props.Add("processAddOrder", "1.3"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderParticleMgr() { renderOrder = 1.35; processAddOrder = 1.35; } ); tchb = new Torque_Class_Helper("RenderParticleMgr"); tchb.Props.Add("renderOrder", "1.35"); tchb.Props.Add("processAddOrder", "1.35"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion #region DiffuseRenderPassManager.addManager( new RenderTranslucentMgr() { renderOrder = 1.4; processAddOrder = 1.4; } ); tchb = new Torque_Class_Helper("RenderTranslucentMgr"); tchb.Props.Add("renderOrder", "1.4"); tchb.Props.Add("processAddOrder", "1.4"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion // Note that the GlowPostFx is triggered after this bin. #region DiffuseRenderPassManager.addManager( new RenderGlowMgr(GlowBin) { renderOrder = 1.5; processAddOrder = 1.5; } ); tchb = new Torque_Class_Helper("RenderGlowMgr", "GlowBin"); tchb.Props.Add("renderOrder", "1.5"); tchb.Props.Add("processAddOrder", "1.5"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion // We render any editor stuff from this bin. Note that the HDR is // completed before this bin to keep editor elements from tone mapping. #region DiffuseRenderPassManager.addManager( new RenderObjectMgr(EditorBin) { bintype = "Editor"; renderOrder = 1.6; processAddOrder = 1.6; } ); tchb = new Torque_Class_Helper("RenderObjectMgr", "EditorBin"); tchb.PropsAddString("bintype", "Editor"); tchb.Props.Add("renderOrder", "1.6"); tchb.Props.Add("processAddOrder", "1.6"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion // Resolve format change token last. #region DiffuseRenderPassManager.addManager( new RenderPassStateBin() { renderOrder = 1.7; stateToken = AL_FormatToken; } ); tchb = new Torque_Class_Helper("RenderPassStateBin"); tchb.Props.Add("renderOrder", "1.7"); tchb.Props.Add("stateToken", "AL_FormatToken"); //RenderPassManager.addManager("DiffuseRenderPassManager", tchb.Create().AsString()); DiffuseRenderPassManager.addManager(tchb.Create().AsString()); #endregion }
public void CheetahCarOnAdd(coWheeledVehicleData datablock, coWheeledVehicle vehicle, string nameSpaceDepth) { int nsd = (nameSpaceDepth.AsInt() + 1); console.ParentExecute(datablock, "onAdd", nsd, new string[] { datablock, vehicle.ID }); vehicle.setWheelTire(0, "CheetahCarTire"); vehicle.setWheelTire(1, "CheetahCarTire"); vehicle.setWheelTire(2, "CheetahCarTireRear"); vehicle.setWheelTire(3, "CheetahCarTireRear"); // Setup the car with some tires & springs for (int i = vehicle.getWheelCount() - 1; i >= 0; i--) { vehicle.setWheelPowered(i, true); vehicle.setWheelSpring(i, "CheetahCarSpring"); } // Steer with the front tires vehicle.setWheelSteering(0, 1); vehicle.setWheelSteering(1, 1); // Add tail lights Torque_Class_Helper tc = new Torque_Class_Helper("PointLight", ""); tc.Props.Add("radius", "1"); tc.Props.Add("isEnabled", "0"); tc.Props.Add("color", @"""1 0 0.141176 1"""); tc.Props.Add("brightness", "2"); tc.Props.Add("castShadows", "1"); tc.Props.Add("priority", "1"); tc.Props.Add("animate", "0"); tc.Props.Add("animationPeriod", "1"); tc.Props.Add("animationPhase", "1"); tc.Props.Add("flareScale", "1"); tc.Props.Add("attenuationRatio", @"""0 1 1"""); tc.Props.Add("shadowType", @"""DualParaboloidSinglePass"""); tc.Props.Add("texSize", "512"); tc.Props.Add("overDarkFactor", @"""2000 1000 500 100"""); tc.Props.Add("shadowDistance", "400"); tc.Props.Add("shadowSoftness", "0.15"); tc.Props.Add("numSplits", "1"); tc.Props.Add("logWeight", "0.91"); tc.Props.Add("fadeStartDistance", "0"); tc.Props.Add("lastSplitTerrainOnly", "0"); tc.Props.Add("representedInLightmap", "0"); tc.Props.Add("shadowDarkenColor", @"""0 0 0 -1"""); tc.Props.Add("includeLightmappedGeometryInShadow", "0"); tc.Props.Add("rotation", @"""1 0 0 0 """); tc.Props.Add("canSave", "1"); tc.Props.Add("canSaveDynamicFields", "1"); tc.Props.Add("splitFadeDistances", @"""10 20 30 40"""); vehicle["rightBrakeLight"] = ((coPointLight)tc.Create()); vehicle["leftBrakeLight"] = ((coPointLight)tc.Create()); vehicle["inv[BulletAmmo]"] = "1000"; // Mount a ShapeBaseImageData vehicle.mountImage("TurretImage", datablock["turretSlot"].AsInt(), true, ""); // Mount the brake lights vehicle.mountObject(vehicle["rightBrakeLight"], datablock["rightBrakeSlot"].AsInt(), new TransformF(true)); vehicle.mountObject(vehicle["leftbrakelight"], datablock["leftBrakeSlot"].AsInt(), new TransformF(true)); }
public void GameConnectionOnDeath(coGameConnection client, coPlayer sourceobject, coGameConnection sourceclient, string damagetype, string damloc) { if (client.isObject()) { if (client["ownedTurrets"] == "") { client["ownedTurrets"] = new Torque_Class_Helper("SimSet").Create().AsString(); } coSimSet simSet = client["ownedTurrets"]; for (uint i = 0; i < simSet.getCount(); i++) { ((coSimObject)simSet.getObject(i)).schedule("10", "delete"); } } // clear the weaponHUD GameConnectionRefreshWeaponHud(client, 0, "", "", "", 0); coPlayer player = client["player"]; // Clear out the name on the corpse player.setShapeName(""); // Update the numerical Health HUD //PlayerUpdateHealth(player); // Switch the client over to the death cam and unhook the player object. coCamera camera = client["camera"]; if (camera.isObject() && player.isObject()) { camera.call("setMode", "Corpse", player, "", ""); client.setControlObject(camera); } else { console.print("------------>Failed to Switch the client over to the death cam."); } client["player"] = "0"; // Display damage appropriate kill message string sendMsgFunction = "sendMsgClientKilled_" + damagetype; if (!console.isFunction(sendMsgFunction)) { sendMsgFunction = "sendMsgClientKilled_Default"; } console.Call(sendMsgFunction, new string[] { "MsgClientKilled", client, sourceclient, damloc }); // Dole out points and check for win if ((damagetype == "Suicide") || (sourceclient == client)) { IncDeaths(client, "1", "1"); IncScore(client, "-1", "0"); } else { IncDeaths(client, "1", "0"); IncScore(sourceclient, "1", "1"); IncKills(sourceclient, "1", "0"); } }