39 lines
No EOL
1.4 KiB
C#
39 lines
No EOL
1.4 KiB
C#
using System;
|
|
using StereoKit;
|
|
|
|
public class Scene {
|
|
Monolith mono;
|
|
Material matFloor = new Material(Shader.Default);
|
|
Model room = Model.FromFile("room/room.glb", Shader.FromFile("room.hlsl"));
|
|
Solid floor;
|
|
public Scene(Monolith mono) {
|
|
this.mono = mono;
|
|
|
|
Console.WriteLine("DSJLFDSFJKJSFD:KJLF: " + room.Nodes.Count);
|
|
|
|
floor = new Solid(World.BoundsPose.position, Quat.Identity, SolidType.Immovable);
|
|
scale = 64f;
|
|
floorScale = new Vec3(scale, 0.1f, scale);
|
|
floor.AddBox(floorScale);
|
|
// box on each side
|
|
floor.AddBox(new Vec3(scale, scale / 2, 0.1f), 1, new Vec3(0, scale / 4, -scale / 2));
|
|
floor.AddBox(new Vec3(scale, scale / 2, 0.1f), 1, new Vec3(0, scale / 4, scale / 2));
|
|
floor.AddBox(new Vec3(0.1f, scale / 2, scale), 1, new Vec3(-scale / 2, scale / 4, 0));
|
|
floor.AddBox(new Vec3(0.1f, scale / 2, scale), 1, new Vec3(scale / 2, scale / 4, 0));
|
|
// and ceiling
|
|
floor.AddBox(new Vec3(scale, 0.1f, scale), 1, new Vec3(0, scale / 2, 0));
|
|
matFloor.SetTexture("diffuse", Tex.FromFile("floor.png"));
|
|
matFloor.SetFloat("tex_scale", 32);
|
|
}
|
|
|
|
public float scale;
|
|
public Vec3 floorScale;
|
|
|
|
|
|
public void Step() {
|
|
// PullRequest.BlockOut(floor.GetPose().ToMatrix(floorScale), Color.White * 0.333f, matFloor);
|
|
|
|
|
|
room.Draw(Matrix.TRS(new Vec3(0, World.BoundsPose.position.y, -1), Quat.Identity, Vec3.One));
|
|
}
|
|
} |