private void LoadTestScene(BasicCamera c) { camera = c; GameEngine.Instance.CurrentScene.Add(camera); GameEngine.Instance.CurrentScene.SetCamera(camera); DebugConsoleComponent dbg = DebugConsoleComponent.CreateConsole().GetComponent <DebugConsoleComponent>(); dbg.AddCommand("reload", cmd_ReLoadScene); dbg.AddCommand("mov", cmd_Move); dbg.AddCommand("rot", cmd_Rotate); GameEngine.Instance.CurrentScene.Add(dbg.Owner); WFCMapGenerator preview = WFCMapGenerator .CreateWFCPreview(Vector3.Zero, "assets/WFCTiles", false, (input) => CreateMap(input, DefaultFilepaths.DefaultLitShader)) .GetComponent <WFCMapGenerator>(); preview.Height = 256; preview.Width = 32; int tries = 1; Add(preview.Owner); preview.Generate(1); while (!preview.Success) { Logger.Log(DebugChannel.Log | DebugChannel.Game, "Generating map Try " + tries, 8); preview.Generate(1); tries++; } }
/// <summary> /// Overridden Awake method for setting up the Interpreter and add the commands to the console /// </summary> protected override void Awake() { Tex = TextureLoader.ParameterToTexture(width, height, "FLGeneratorMainTexture"); SpecularTex = TextureLoader.ParameterToTexture(width, height, "FLGeneratorSpecularTexture"); SpecularTex.TexType = TextureType.Specular; for (int i = 0; i < previews.Count; i++) { previews[i].Textures[0] = Tex; previews[i].Textures[1] = SpecularTex; } if (multiThread) { flRunner = new FlMultiThreadScriptRunner(null, DataVectorTypes.Uchar1, "assets/kernel/"); } else { flRunner = new FLScriptRunner(CLAPI.MainThread, DataVectorTypes.Uchar1, "assets/kernel/"); } DebugConsoleComponent console = Owner.Scene.GetChildWithName("Console").GetComponent <DebugConsoleComponent>(); console?.AddCommand("runfl", cmd_RunFL); console?.AddCommand("r", cmd_FLReset); }
protected override void Awake() { base.Awake(); DebugConsoleComponent comp = Owner.Scene.GetChildWithName("Console") .GetComponent <DebugConsoleComponent>(); comp?.AddCommand("rain", cmd_SpawnColliders); comp?.AddCommand("gravity", cmd_SetGravity); comp?.AddCommand("reset", cmd_ResetCollider); }
protected override void Awake() { //Physics.AddBoxStatic(System.Numerics.Vector3.UnitY * -4, new System.Numerics.Vector3(50, 10, 50), 1, 3); base.Awake(); DebugConsoleComponent comp = Owner.Scene.GetChildWithName("Console") .GetComponent <DebugConsoleComponent>(); comp?.AddCommand("rain", cmd_SpawnColliders); comp?.AddCommand("gravity", cmd_SetGravity); comp?.AddCommand("reset", cmd_ResetCollider); }
protected override void Awake() { enemiesAlive++; target = Owner.Scene.GetChildWithName("Player"); if (target == null) { throw new GameException("Target is Null"); } Collider = Owner.GetComponent <Collider>(); if (Collider == null) { Logger.Log(DebugChannel.Warning, "No Rigid body attached", 10); } GameObject dbg = Owner.Scene.GetChildWithName("Console"); if (dbg != null) { DebugConsoleComponent console = dbg.GetComponent <DebugConsoleComponent>(); if (console != null) { console.AddCommand("ereset", cmdResetPlayer); console.AddCommand("ecdamp", cmdChangeDamp); console.AddCommand("ecmove", cmdChangeForce); console.AddCommand("ecforce", cmdBulletForce); console.AddCommand("ecbrate", cmdBulletPerSecond); console.AddCommand("eactive", cmdActivate); console.AddCommand("pcbmass", cmdBulletMass); console.AddCommand("pcbphys", cmdToggleBulletPhysics); } } }
protected override void Awake() { Collider = Owner.GetComponent <Collider>(); if (Collider == null) { Logger.Log(DebugChannel.Warning, "No Rigid body attached", 10); } GameObject dbg = Owner.Scene.GetChildWithName("Console"); if (dbg != null) { DebugConsoleComponent console = dbg.GetComponent <DebugConsoleComponent>(); if (console != null) { console.AddCommand("preset", cmdResetPlayer); console.AddCommand("pcdamp", cmdChangeDamp); console.AddCommand("pcmove", cmdChangeForce); console.AddCommand("pcforce", cmdBulletForce); console.AddCommand("pcbrate", cmdBulletPerSecond); console.AddCommand("pcbmass", cmdBulletMass); console.AddCommand("pcbphys", cmdToggleBulletPhysics); } } lastEnemySpawn = (int)Owner.LocalPosition.Z; }
/// <summary> /// Overridden Awake method for setting up the Interpreter and add the commands to the console /// </summary> protected override void Awake() { Tex = TextureLoader.ParameterToTexture(width, height); for (int i = 0; i < _previews.Count; i++) { _previews[i].Texture = Tex; } DebugConsoleComponent console = Owner.Scene.GetChildWithName("Console").GetComponent <DebugConsoleComponent>(); console?.AddCommand("runfl", cmd_RunFL); console?.AddCommand("dbgfl", cmd_RunFLStepped); console?.AddCommand("step", cmd_FLStep); console?.AddCommand("r", cmd_FLReset); console?.AddCommand("dbgstop", cmd_FLStop); _db = new KernelDatabase("kernel/", OpenCL.TypeEnums.DataTypes.UCHAR1); }
protected override void Awake() { DebugConsoleComponent console = Owner.Scene.GetChildWithName("Console").GetComponent <DebugConsoleComponent>(); console.AddCommand("n", cmd_N); console.AddCommand("ground", cmd_Ground); console.AddCommand("height", cmd_Height); console.AddCommand("limit", cmd_Limit); console.AddCommand("seed", cmd_Seed); console.AddCommand("useseed", cmd_UseSeed); console.AddCommand("width", cmd_Width); console.AddCommand("symmetry", cmd_Symmetry); console.AddCommand("pin", cmd_PeriodicInput); console.AddCommand("pout", cmd_PeriodicOutput); console.AddCommand("run", cmd_Run); console.AddCommand("reload", cmd_Reload); console.AddCommand("list", cmd_List); renderer = Owner.GetComponent <MeshRendererComponent>(); }
protected override void InitializeScene() { Mesh bgBox = MeshLoader.FileToMesh("models/cube_flat.obj"); ShaderProgram.TryCreate(new Dictionary <ShaderType, string> { { ShaderType.FragmentShader, "shader/UITextRender.fs" }, { ShaderType.VertexShader, "shader/UIRender.vs" } }, out ShaderProgram textShader); ShaderProgram.TryCreate(new Dictionary <ShaderType, string> { { ShaderType.FragmentShader, "shader/texture.fs" }, { ShaderType.VertexShader, "shader/texture.vs" } }, out ShaderProgram shader); DebugConsoleComponent dbg = DebugConsoleComponent.CreateConsole().GetComponent <DebugConsoleComponent>(); dbg.AddCommand("mov", cmd_ChangeCameraPos); dbg.AddCommand("rot", cmd_ChangeCameraRot); dbg.AddCommand("reload", cmd_ReLoadScene); dbg.AddCommand("next", cmd_NextScene); dbg.AddCommand("lookat", cmd_LookAtAudioSource); GameEngine.Instance.CurrentScene.Add(dbg.Owner); GameObject bgObj = new GameObject(Vector3.UnitY * -3, "BG"); bgObj.Scale = new Vector3(25, 1, 25); bgObj.AddComponent(new MeshRendererComponent(shader, bgBox, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); GameEngine.Instance.CurrentScene.Add(bgObj); BasicCamera c = new BasicCamera( Matrix4.CreatePerspectiveFieldOfView(MathHelper.DegreesToRadians(75f), GameEngine.Instance.Width / (float)GameEngine.Instance.Height, 0.01f, 1000f), Vector3.Zero); c.Translate(new Vector3(0, 4, 0)); _camLookCommandComponent = new LookAtComponent(); c.AddComponent(_camLookCommandComponent); _sourceCube = new GameObject(Vector3.UnitZ * -5, "Audio Source"); Mesh sourceCube = MeshLoader.FileToMesh("models/cube_flat.obj"); AudioSourceComponent source = new AudioSourceComponent(); _sourceCube.AddComponent(source); _sourceCube.AddComponent(new RotateAroundComponent()); _sourceCube.AddComponent(new MeshRendererComponent(shader, sourceCube, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); if (!AudioLoader.TryLoad("sounds/test_mono_16.wav", out AudioFile clip)) { Console.ReadLine(); } source.Clip = clip; source.Looping = true; source.Play(); GameEngine.Instance.CurrentScene.Add(_sourceCube); AudioListener listener = new AudioListener(); c.AddComponent(listener); GameEngine.Instance.CurrentScene.Add(c); GameEngine.Instance.CurrentScene.SetCamera(c); }
protected override void InitializeScene() { int rayLayer = LayerManager.RegisterLayer("raycast", new Layer(1, 2)); int hybLayer = LayerManager.RegisterLayer("hybrid", new Layer(1, 1 | 2)); int physicsLayer = LayerManager.RegisterLayer("physics", new Layer(1, 1)); LayerManager.DisableCollisions(rayLayer, physicsLayer); BasicCamera mainCamera = new BasicCamera( Matrix4.CreatePerspectiveFieldOfView(MathHelper.DegreesToRadians(75f), GameEngine.Instance.Width / (float)GameEngine.Instance.Height, 0.01f, 1000f), Vector3.Zero); object mc = mainCamera; EngineConfig.LoadConfig("assets/configs/camera_astardemo.xml", ref mc); GameObject sourceCube = new GameObject(new Vector3(0, 0, 0), "Light Source"); GameObject hackCube = new GameObject(new Vector3(0, 8, -50), "Workaround"); Add(sourceCube); Add(hackCube); sourceCube.AddComponent(new LightComponent()); mainCamera.AddComponent(new CameraRaycaster(sourceCube, hackCube)); GameObject bgObj = new GameObject(new Vector3(0, -3, -32), "BG") { Scale = new Vector3(32, 1, 32) }; Collider groundCol = new Collider(new Box(Vector3.Zero, 64, 1, 64), hybLayer); Texture bgTex = TextureLoader.ColorToTexture(Color.Yellow); bgTex.TexType = TextureType.Diffuse; bgObj.AddComponent(groundCol); tex = TextureLoader.ColorToTexture(Color.Green); beginTex = TextureLoader.ColorToTexture(Color.Blue); endTex = TextureLoader.ColorToTexture(Color.Red); blockTex = TextureLoader.ColorToTexture(Color.DarkMagenta); tex.TexType = beginTex.TexType = endTex.TexType = blockTex.TexType = TextureType.Diffuse; DebugConsoleComponent c = DebugConsoleComponent.CreateConsole().GetComponent <DebugConsoleComponent>(); c.AddCommand("repath", ResetPaths); c.AddCommand("rp", ResetPaths); Add(c.Owner); bgObj.AddComponent(new LitMeshRendererComponent(DefaultFilepaths.DefaultLitShader, Prefabs.Cube, bgTex, 1)); Add(bgObj); Add(mainCamera); SetCamera(mainCamera); Random rnd = new Random(); nodes = GenerateNodeGraph(64, 64); for (int i = 0; i < nodes.GetLength(0); i++) { for (int j = 0; j < nodes.GetLength(1); j++) { if (rnd.Next(0, 6) == 0) { nodes[i, j].Walkable = false; nodes[i, j].Owner .AddComponent(new LitMeshRendererComponent(DefaultFilepaths.DefaultLitShader, Prefabs.Sphere, blockTex, 1)); } nodes[i, j].Owner.Scale *= 0.3f; Add(nodes[i, j].Owner); } } }
protected override void InitializeScene() { Mesh sphere = MeshLoader.FileToMesh("models/sphere_smooth.obj"); Mesh plane = MeshLoader.FileToMesh("models/plane.obj"); Mesh bgBox = MeshLoader.FileToMesh("models/cube_flat.obj"); ShaderProgram.TryCreate(new Dictionary <ShaderType, string> { { ShaderType.FragmentShader, "shader/UITextRender.fs" }, { ShaderType.VertexShader, "shader/UITextRender.vs" } }, out ShaderProgram textShader); ShaderProgram.TryCreate(new Dictionary <ShaderType, string> { { ShaderType.FragmentShader, "shader/texture.fs" }, { ShaderType.VertexShader, "shader/texture.vs" } }, out ShaderProgram shader); GameObject objSphere = new GameObject(new Vector3(1, 1, 0), "SphereDisplay"); objSphere.AddComponent(new MeshRendererComponent(shader, sphere, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); objSphere.AddComponent(new RotatingComponent()); GameObject objQuad = new GameObject(new Vector3(-1, 1, 0), "QuadDisplay"); objQuad.AddComponent(new MeshRendererComponent(shader, plane, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); objQuad.Rotate(new Vector3(1, 0, 0), MathHelper.DegreesToRadians(90)); GameObject uiText = new GameObject(new Vector3(0), "UIText"); uiText.AddComponent(new FLGeneratorComponent(new List <MeshRendererComponent> { objSphere.GetComponent <MeshRendererComponent>(), objQuad.GetComponent <MeshRendererComponent>() }, 512, 512)); GameEngine.Instance.CurrentScene.Add(uiText); DebugConsoleComponent dbg = DebugConsoleComponent.CreateConsole().GetComponent <DebugConsoleComponent>(); dbg.AddCommand("mov", cmd_ChangeCameraPos); dbg.AddCommand("rot", cmd_ChangeCameraRot); dbg.AddCommand("reload", cmd_ReLoadScene); dbg.AddCommand("next", cmd_NextScene); GameEngine.Instance.CurrentScene.Add(dbg.Owner); GameEngine.Instance.CurrentScene.Add(objSphere); GameEngine.Instance.CurrentScene.Add(objQuad); GameObject bgObj = new GameObject(Vector3.UnitY * -3, "BG"); bgObj.Scale = new Vector3(25, 1, 25); Texture bgTex = TextureLoader.FileToTexture("textures/ground4k.png"); //BufferOperations.GetRegion<byte>(buf, new int3(), ) bgObj.AddComponent(new MeshRendererComponent(shader, bgBox, bgTex, 1)); GameEngine.Instance.CurrentScene.Add(bgObj); BasicCamera mainCamera = new BasicCamera( Matrix4.CreatePerspectiveFieldOfView(MathHelper.DegreesToRadians(75f), GameEngine.Instance.Width / (float)GameEngine.Instance.Height, 0.01f, 1000f), Vector3.Zero); object mc = mainCamera; EngineConfig.LoadConfig("configs/camera_fldemo.xml", ref mc); GameEngine.Instance.CurrentScene.Add(mainCamera); GameEngine.Instance.CurrentScene.SetCamera(mainCamera); GameObject camContainer = new GameObject("CamContainer"); BasicCamera inPicCam = new BasicCamera( Matrix4.CreatePerspectiveFieldOfView(MathHelper.DegreesToRadians(75f), GameEngine.Instance.Width / (float)GameEngine.Instance.Height, 0.01f, 1000f), Vector3.Zero); inPicCam.Rotate(new Vector3(1, 0, 0), MathHelper.DegreesToRadians(0)); inPicCam.Translate(new Vector3(0, 2, 4)); inPicCam.AddComponent(new RotateAroundComponent()); GameObject zeroPoint = new GameObject("Zero"); GameEngine.Instance.CurrentScene.Add(zeroPoint); LookAtComponent comp = new LookAtComponent(); comp.SetTarget(zeroPoint); inPicCam.AddComponent(comp); GameEngine.Instance.CurrentScene.Add(inPicCam); splitCam = new RenderTarget(inPicCam, 1, new Color(0, 0, 0, 0)) { MergeType = RenderTargetMergeType.Additive, ViewPort = new Rectangle(0, 0, (int)(GameEngine.Instance.Width * 0.3f), (int)(GameEngine.Instance.Height * 0.3f)) }; GameEngine.Instance.CurrentScene.Add(camContainer); GameEngine.Instance.AddRenderTarget(splitCam); }
protected override void InitializeScene() { Texture test = TextureLoader.FileToTexture("textures/ground4k.png"); int rayLayer = LayerManager.RegisterLayer("raycast", new Layer(1, 2)); int hybLayer = LayerManager.RegisterLayer("hybrid", new Layer(1, 1 | 2)); int physicsLayer = LayerManager.RegisterLayer("physics", new Layer(1, 1)); LayerManager.DisableCollisions(rayLayer, physicsLayer); Mesh bgBox = MeshLoader.FileToMesh("models/cube_flat.obj"); Mesh box = MeshLoader.FileToMesh("models/cube_flat.obj"); Mesh sphere = MeshLoader.FileToMesh("models/sphere_smooth.obj"); ShaderProgram.TryCreate(new Dictionary <ShaderType, string> { { ShaderType.FragmentShader, "shader/UITextRender.fs" }, { ShaderType.VertexShader, "shader/UIRender.vs" } }, out ShaderProgram textShader); ShaderProgram.TryCreate(new Dictionary <ShaderType, string> { { ShaderType.FragmentShader, "shader/texture.fs" }, { ShaderType.VertexShader, "shader/texture.vs" } }, out ShaderProgram shader); PhysicsDemoComponent phys = new PhysicsDemoComponent(); GameEngine.Instance.CurrentScene.AddComponent(phys); //Adding Physics Component to world. DebugConsoleComponent dbg = DebugConsoleComponent.CreateConsole().GetComponent <DebugConsoleComponent>(); dbg.AddCommand("mov", cmd_ChangeCameraPos); dbg.AddCommand("rot", cmd_ChangeCameraRot); dbg.AddCommand("reload", cmd_ReLoadScene); dbg.AddCommand("next", cmd_NextScene); GameEngine.Instance.CurrentScene.Add(dbg.Owner); GameObject bgObj = new GameObject(Vector3.UnitY * -3, "BG"); bgObj.Scale = new Vector3(250, 1, 250); bgObj.AddComponent(new MeshRendererComponent(shader, bgBox, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); Collider groundCol = new Collider(new Box(Vector3.Zero, 500, 1, 500), hybLayer); bgObj.AddComponent(groundCol); GameEngine.Instance.CurrentScene.Add(bgObj); GameObject boxO = new GameObject(Vector3.UnitY * 3, "Box"); boxO.AddComponent(new MeshRendererComponent(shader, bgBox, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); boxO.AddComponent(new Collider(new Box(Vector3.Zero, 1, 1, 1), physicsLayer)); boxO.Translate(new Vector3(55, 0, 35)); GameEngine.Instance.CurrentScene.Add(boxO); GameObject mouseTarget = new GameObject(Vector3.UnitY * -3, "BG"); mouseTarget.Scale = new Vector3(1, 1, 1); mouseTarget.AddComponent(new MeshRendererComponent(shader, sphere, TextureLoader.FileToTexture("textures/ground4k.png"), 1)); GameEngine.Instance.CurrentScene.Add(mouseTarget); BasicCamera c = new BasicCamera( Matrix4.CreatePerspectiveFieldOfView(MathHelper.DegreesToRadians(75f), GameEngine.Instance.Width / (float)GameEngine.Instance.Height, 0.01f, 1000f), Vector3.Zero); c.Rotate(new Vector3(1, 0, 0), MathHelper.DegreesToRadians(-25)); c.Translate(new Vector3(1, 30, 45)); c.AddComponent(new CameraRaycaster(mouseTarget, 3, boxO)); GameEngine.Instance.CurrentScene.Add(c); GameEngine.Instance.CurrentScene.SetCamera(c); }