Some of Tellusim Core SDK tests
C++, C#, Rust, Python, Swift, Java, Kotlin
Direct3D12, Direct3D11, Metal, Vulkan, OpenGL, OpenGLES, WebGL, WebGPU
Windows, Linux, macOS, Android, iOS, Web
Forward shading with 16384 dynamic lights. This algorithm is compatible with deferred shading and transparent objects.
https://github.com/Tellusim/Tests/tree/main/graphics/lights/
A massive meshlets rendering example with Mesh Shader for hardware and Compute Shader for software rasterization.
https://github.com/Tellusim/Tests/tree/main/graphics/meshlet/
Traversal class for the simple raytracing pipeline access. Vulkan or Direct3D12 API is required.
https://github.com/Tellusim/Tests/tree/main/graphics/traversal/
Ray Query raytracing of animated scene. Vulkan, Direct3D12, or Metal API is required.
https://github.com/Tellusim/Tests/tree/main/graphics/tracing/
The SeparableFilter interface helps to create different separable filters like Gaussian, Sobel, Box, and custom weights.
https://github.com/Tellusim/Tests/tree/main/graphics/separable_filter/
Quadrilateral tessellation with Control + Evaluate or Mesh Shaders.
https://github.com/Tellusim/Tests/tree/main/graphics/tessellation/
Ordered Independent Transparency with atomic buffer operations from the fragment shader.
https://github.com/Tellusim/Tests/tree/main/graphics/transparency/
Hardware raytracing shadows with simple deferred shading. An API with Ray Query support is required.
https://github.com/Tellusim/Tests/tree/main/graphics/shadow_tracing/
Software raytracing shadows with simple deferred shading. Compatible with all APIs.
https://github.com/Tellusim/Tests/tree/main/graphics/shadow_tree/
PCF Shadow Maps provides shadow with variable penumbra size based on the distance between the shadow caster and receiver.
https://github.com/Tellusim/Tests/tree/main/graphics/shadow_pcf/
Exponential Shadow Maps provides noise-free shadows with a fixed performance cost and constant penumbra size.
https://github.com/Tellusim/Tests/tree/main/graphics/shadow_esm/
Parallax occlusion mapping with self-shadowing for the mesh geometry.
https://github.com/Tellusim/Tests/tree/main/graphics/parallax_2d/
Parallax occlusion mapping with self-shadowing for the analytical sphere.
https://github.com/Tellusim/Tests/tree/main/graphics/parallax_cube/
Mesh tangent basis renormalization at the Fragment Shader. Mesh class can re-create normal and tangent vectors.
https://github.com/Tellusim/Tests/tree/main/graphics/tangent/
MeshModel class creates a rendering model representation for the input Mesh or MeshGeometry with a specified Pipeline layout.
https://github.com/Tellusim/Tests/tree/main/graphics/model/
This is a basic skinned mesh animation example. Mesh classes give comprehensive access to all mesh data, including Nodes, Animations, Materials, Cameras, and Lights.
https://github.com/Tellusim/Tests/tree/main/graphics/skinned/
Simple antialiased line rendering. The Vertex shader creates a screen-aligned billboard, and the fragment shader calculates the distance to the line.
https://github.com/Tellusim/Tests/tree/main/graphics/line/
Real-time BC1-BC7 texture encoder using compute shader.
https://github.com/Tellusim/Tests/tree/main/graphics/encoder/
MeshReduce is a simple way to simplify input mesh geometry. Simplification preserves all Mesh Attributes, and it is compatible with Skinning Animation.
https://github.com/Tellusim/Tests/tree/main/geometry/reduce/
MeshRefine refines geometry mesh using Catmull-Clark (for quadrilaterals) or Loop (for triangles) subdivision algorithms. The Crease Attribute allows additional control over the subdivision process.
https://github.com/Tellusim/Tests/tree/main/geometry/refine/
Simple convolutional autoencoder trained with PyTorch and imported into TensorGraph.
https://github.com/Tellusim/Tests/tree/main/parallel/tensor_torch/
MNIST Digits Recognition using TensorGraph with PyTorch model.
https://github.com/Tellusim/Tests/tree/main/parallel/tensor_mnist/
Simple 2D fluid simulation based on Fast Fourier Transformation.
https://github.com/Tellusim/Tests/tree/main/parallel/fluid_2d/
Multiple independent sorting algorithms can be dispatched in parallel. There is no overhead in comparision with the single array sort. Additionally, dispatch parameters can be fetched from the indirect buffer.
https://github.com/Tellusim/Tests/tree/main/parallel/radix_sort/
Simple physics simulation with collisions based on the SpatialGrid class. It is the fastest way to collide objects of the same size.
https://github.com/Tellusim/Tests/tree/main/parallel/spatial_grid/
Simple physics simulation with collisions based on the SpatialTree class. The SpatialTree allows collision and intersection tests with any primitive inside BVH.
https://github.com/Tellusim/Tests/tree/main/parallel/spatial_tree/
Different CanvasElement classes, including texture filtration, gradients, contour outlines, and SVG rendering.
https://github.com/Tellusim/Tests/tree/main/interface/canvas/
Different User Interface Control classes in resolution-independent configuration.
https://github.com/Tellusim/Tests/tree/main/interface/controls/
A transparent multilayer Controls with variable background blur.
https://github.com/Tellusim/Tests/tree/main/interface/layer/
Simple SVG image loading and rendering. CanvasShape class accepts SVG path string as input data.
https://github.com/Tellusim/Tests/tree/main/interface/svg/
Custom Controls can be created by simple ControlBase class inheritance. The Control behavior can be completely overridden.
https://github.com/Tellusim/Tests/tree/main/interface/control/
Performance and precision difference between 16-bit, 32-bit, and 64-bit floating formats.
https://github.com/Tellusim/Tests/tree/main/platform/precision/
TextureTable is an interface for an unlimited number of bindless textures that can be accessed from any shader by uniform or non-uniform index. Vulkan or Direct3D12 API is required.
https://github.com/Tellusim/Tests/tree/main/platform/table/
Texel buffer provides cached buffer access that is compatible with OpenGLES platform. Moreover, it can work faster than the Storage buffer in some scenarios.
https://github.com/Tellusim/Tests/tree/main/platform/texel/
Dynamic 3D texture created with SIMD CPU instructions.
https://github.com/Tellusim/Tests/tree/main/platform/texture/
Command class for basic rendering. Depth Cube texture for omnidirectional shadow map.
https://github.com/Tellusim/Tests/tree/main/platform/command/
Hardware accelerated raytracing shadows. An API with Ray Query support is required.
https://github.com/Tellusim/Tests/tree/main/platform/tracing/
Compute class for simple compute shader texture generation.
https://github.com/Tellusim/Tests/tree/main/platform/compute/
Multi-GPU N-body simulation with Fence synchronization. A shared buffer is used for data exchange between GPUs.
https://github.com/Tellusim/Tests/tree/main/platform/fence/
A single-thread dynamic geometry rendering can provide more than 100M triangles per second rate.
https://github.com/Tellusim/Tests/tree/main/platform/dynamic/
Vertex Shader clip distance output is useful for arbitrary geometry culling.
https://github.com/Tellusim/Tests/tree/main/platform/clipping/
Constructive Solid Geometry with the Stencil Buffer. This algorithm is compatible with procedural geometry.
https://github.com/Tellusim/Tests/tree/main/platform/stencil/
Fusion API allows replicating all commands and resources across multiple physical or logical devices. It dramatically simplifies the development of apps for multi-GPU or multi-channel rendering.
https://github.com/Tellusim/Tests/tree/main/platform/fusion/
Multilayer rendering with Layer specified by the Vertex Shader / Geometry Shader / Geometry Passthrough Shader.
https://github.com/Tellusim/Tests/tree/main/platform/layers/
Build-in barycentric coordinate input is available in Vulkan, Direct3D12, and Metal APIs.
https://github.com/Tellusim/Tests/tree/main/platform/barycentric/
Writing and reading individual multisample texture samples with active Pipeline sample write mask.
https://github.com/Tellusim/Tests/tree/main/platform/samples/
Hardware conservative rasterization.
https://github.com/Tellusim/Tests/tree/main/platform/conservative/
Cooperative matrix example.
https://github.com/Tellusim/Tests/tree/main/platform/cooperative/
Matrix multiplication example.
https://github.com/Tellusim/Tests/tree/main/platform/matrix/
A simple preprocessor-based printf() functionality for compute shaders that work with all APIs.
https://github.com/Tellusim/Tests/tree/main/platform/printf/