All Classes and Interfaces
Class
Description
Easy way for rendering arc with thinness anywhere.
Highest performance cost in all illuminates.
Always available, even if
BoxConfigs.isShaderEnable() at false.Running on another thread, not the vanilla thread.
The default light direction is
vec3(1.0, 0.0, 0.0), use model matrix to rotate it.The standard trail tracker for all the projectiles that BoxUtil built-in autogen static trail system will use it.
Only and must have a no-parameter constructor.
Here all models are (1 * 1 * 1) box border size, and center are base at (0, 0, 0).
Make sure you are understand what you want to do.
In rendering loop: rendering...
In rendering loop: beforeRendering => runBeforeRenderingDelayGLCmd => applyMemoryBarrier => beginRendering => beginIllumination => runBeginIlluminationDelayGLCmd => afterRendering => logical...
A multi-thread OpenGL based lib/engine of the game Starsector.
For how to use custom illuminant data for any combat entity(only for ship and projectile):
For how to use custom material data for any combat entity:
For any 3d model.
Always available, even if
BoxConfigs.isShaderEnable() at false.This is a 2D curve.
Easy way for rendering cubic bezier with width and texture anywhere.
For any Direct draw entity:
Distortion entity is a local post-effect entity.
Just for formatted update, without getter.
Just for formatted update, without getter.
For fetch key of weapon, use
EntityShadingDataManager.getWeaponKey(String, WeaponPartType, byte).Just for formatted update, without getter.
Just for formatted update, without getter.
Flare entity will not to be applying AA if depth based AA is enabled, and always pass illumination.
Only supported one page loading now.
This wrapper automatically adapts commonly used OpenGL functions by querying driver and hardware support for specific features.
Transform feedback
NOTE: Not a core feature of any OpenGL version.
A memory pool for managing OpenGL Buffer Objects, supporting multi‑threaded calls via two different granularities of locks.
Do not forget override the
GPUMemory.meta() if you need.Default direction is
vec3(0.0, 0.0, -1.0)Priority use this if renders more than one entity.
Priority use this if renders more than one entity.
Priority use this if renders more than one entity.
Used for
InstanceRenderAPI.For example:
Use it when needs draw something to main g-buffer.
For draw 3D object with lights and sprite:
For example:
For beam or ray, the default ends is
start=vec3(-lengthHalf, 0.0, 0.0) and end=vec3(lengthHalf, 0.0, 0.0).Vertices: vec2(-1.0, 0.0), vec2(1.0, 0.0)
Maybe renaming at next Starsector update.
Max float value is
NodeData.MAX_VALUE, used half-float in GL.Easy way for display number value anywhere.
For most usage scenarios.
Vertices: vec2(0.0)
Above 55.37MB cost in vRAM at 1920x1080.
Vertices: vec2(-1.0), vec2(1.0, -1.0), vec2(-1.0, 1.0), vec2(1.0)
Some
CombatEngineAPI like visual effects spawning method.This is a 2D curve.
For example how use it:
For all result texture, recommend to use storage texture for performance.
Very^32 simple particle dynamic resource manager.
Default direction is
vec3(1.0, 0.0, 0.0), use model matrix to rotate itAdvanced sprite rendering.
Recommended to use const field for all.
For how to simply add your trail on projectile or missile:
For example, in combat:
Always running on vanilla thread.
Easy way for rendering texture in arc with thinness anywhere.
Put in to rendering manage is not required, can direct creating and use it.
Default value
TextFieldEntity.Alignment.LEFT.Easy way for rendering text anywhere.
This is a 2D trail.
All angle value must be
[0, 360] or [0, 2π].For rendering vanilla ui border "ui_border1_XX" or "panel00_XX" serial.