/// <inheritdoc /> public Tutorial2(TGCViewer game) : base(game) { Category = TGCSampleCategory.Tutorials; Name = "Tutorial 2"; Description = "Shows the Creation of a 3D Box with one color per vertex and can be moved using the keyboard arrows."; }
/// <inheritdoc /> public ModelOnASimpleTerrain(TGCViewer game) : base(game) { Category = TGCSampleCategory.Heightmaps; Name = "Model On A Simple Terrain"; Description = "This sample demonstrates how to use information about a heightmap's vertex normals to follow the contour of the terrain."; }
private static void Main() { using (var game = new TGCViewer()) { game.Run(); } }
/// <inheritdoc /> public Tutorial1(TGCViewer game) : base(game) { Category = TGCSampleCategory.Tutorials; Name = "Tutorial 1"; Description = "The classic hello world in graphics! Shows how to create triangles with color vertices drawn with primitives."; }
/// <inheritdoc /> public SimpleSkyBox(TGCViewer game) : base(game) { Category = TGCSampleCategory.Shaders; Name = "Simple SkyBox"; Description = "Shows how to use a cube with a texture on each of its faces, which allows to achieve the effect of an enveloping sky in the scene."; }
public Tutorial5(TGCViewer game) : base(game) { Category = TGCSampleCategory.Tutorials; Name = "Tutorial 5"; Description = "Shows how to load a 3D model. You can move around the scene with a simple camera that handles asdw and arrows keys."; }
/// <inheritdoc /> public Music(TGCViewer game) : base(game) { Category = TGCSampleCategory.Audio; Name = "Music"; Description = "Shows how to play a song file in MP3 format for example. Audio from https://www.fesliyanstudios.com"; }
/// <inheritdoc /> public SolarSystem(TGCViewer game) : base(game) { Category = TGCSampleCategory.Transformations; Name = "Solar System"; Description = "Shows how to concatenate transformations to generate movements of planets in the solar system. You can move around the scene with a simple camera that handles asdw and arrows keys."; }
/// <inheritdoc /> public EnvironmentMap(TGCViewer game) : base(game) { Category = TGCSampleCategory.PostProcessing; Name = "Environment Map"; Description = "Render an environment map from the scene and use it for reflections"; }
/// <inheritdoc /> public WallOfBoxes(TGCViewer game) : base(game) { Category = TGCSampleCategory.Physics; Name = "BepuPhysics - Wall of boxes"; Description = "Time to drop boxes!"; }
/// <summary> /// Default constructor. /// </summary> /// <param name="game">The game where the explorer is going to be draw.</param> public TGCViewerModel(TGCViewer game) { Game = game; ActiveSampleTreeNode = -1; }
/// <inheritdoc /> public ThirdPersonPlatformer(TGCViewer game) : base(game) { Category = TGCSampleCategory.Collisions; Name = "Third Person Platformer"; Description = "Shows an example of a third person platformer game with different type of interactions."; }
/// <inheritdoc /> public Bloom(TGCViewer game) : base(game) { Category = TGCSampleCategory.PostProcessing; Name = "Bloom"; Description = "Applying a Bloom post-process to a scene"; }
/// <inheritdoc /> public Tutorial4(TGCViewer game) : base(game) { Category = TGCSampleCategory.Tutorials; Name = "Tutorial 4"; Description = "Shows how to create a Quad and a Box with a 2D image as a texture to give it color."; }
/// <inheritdoc /> public CameraCollision(TGCViewer game) : base(game) { Category = TGCSampleCategory.Collisions; Name = "Camera Collision"; Description = "Shows how to prevent the camera from surpassing surfaces or areas."; }
/// <summary> /// Default constructor. /// </summary> /// <param name="game">The game.</param> public TGCSample(TGCViewer game) : base(game) { Game = game; }
/// <inheritdoc /> public BlinnPhong(TGCViewer game) : base(game) { Category = TGCSampleCategory.Shaders; Name = "Blinn Phong"; Description = "Applying Blinn-Phong to a scene"; }
/// <inheritdoc /> public ShaderVisualizer(TGCViewer game) : base(game) { Category = TGCSampleCategory.Shaders; Name = "Shader Visualizer"; Description = "Shader Visualizer. Reloads and compiles a shader file in runtime."; }
public Tutorial6(TGCViewer game) : base(game) { Category = TGCSampleCategory.Tutorials; Name = "Tutorial 6"; Description = "This sample shows how to apply simple program controlled rigid body animation to a model."; }
public PyramidOfBoxes(TGCViewer game) : base(game) { Category = TGCSampleCategory.Physics; Name = "BepuPhysics - Pyramid of boxes"; Description = "A pyramid of boxes, because you can't have a physics engine without pyramids of boxes."; }
/// <inheritdoc /> public ComboRata(TGCViewer game) : base(game) { Category = TGCSampleCategory.CompleteSolutions; Name = "Combo Rata"; Description = "A mini game with some effects."; }
/// <inheritdoc /> public Tutorial3(TGCViewer game) : base(game) { Category = TGCSampleCategory.Tutorials; Name = "Tutorial 3"; Description = "This sample shows how to draw 3D geometric primitives such as cubes, spheres and cylinders."; }
/// <inheritdoc /> public ShadowMap(TGCViewer game) : base(game) { Category = TGCSampleCategory.PostProcessing; Name = "Shadow Map"; Description = "Projecting shadows in a scene"; }
/// <inheritdoc /> public GaussianBlur(TGCViewer game) : base(game) { Category = TGCSampleCategory.PostProcessing; Name = "Gaussian Blur"; Description = "Applying a Gaussian Blur post-process to a scene"; }
/// <inheritdoc /> public BoundingVolumesTest(TGCViewer game) : base(game) { Category = TGCSampleCategory.Collisions; Name = "Bounding Volumes Test"; Description = "Shows how to test collision for different Bounding Volumes."; }
public BackFaceCulling(TGCViewer game) : base(game) { Category = TGCSampleCategory.RenderPipeline; Name = "Back-Face Culling"; Description = "Visualizing properties of the back-face culling command"; }
/// <inheritdoc /> public TextureMerge(TGCViewer game) : base(game) { Category = TGCSampleCategory.PostProcessing; Name = "Texture Merge"; Description = "Merging the scene render target with a texture"; }
/// <inheritdoc /> public AABBTest(TGCViewer game) : base(game) { Category = TGCSampleCategory.Collisions; Name = "AABB Test"; Description = "Shows how to test collision for two AABBs."; }
/// <inheritdoc /> public BasicShader(TGCViewer game) : base(game) { Category = TGCSampleCategory.Shaders; Name = "Basic Shader"; Description = "Basic Shader Sample. Animation by vertex shader and coloring by pixel shader."; }
/// <summary> /// Default constructor. /// </summary> /// <param name="game">The game.</param> public TGCLogoSample(TGCViewer game) : base(game) { Name = GetType().Name; Description = Description = "Time to explore the samples :)"; }