ERA-3D is a 3D fantasy console inspired by 5th generation video game consoles such as the Nintendo 64 and Sony Playstation.
Warning
ERA-3D is still in early development, expect unfinished UI and missing features!
Display: 640x360
Memory: 8MiB general purpose RAM, memory-mapped assets (textures, audio, models)
Textures: 32KiB texture cache, 128x64 (RGBA32) and 256x128 (8 bit indexed) modes
Rendering: Maximum of ~16k triangles per frame*, OpenGL 1.1 fixed-function style graphics API
Effects:
- Programmable 4-cycle Color Combiner
- Color blending
- Depth, scissor, & stencil testing
- 3-point texture filtering
- Per-vertex lighting
- Depth-based fog
Audio: 8 tracks, 8bit 16khz stereo audio sample playback, audio synthesis**
Scripting: Custom langauge similar to C
* Triangle rendering limit is not yet implemented and is subject to change
** Audio subsystem is not yet implemented
enum {
// RGBA32 color constants
BLACK = 0x000000FF,
RED = 0xFF0000FF,
GREEN = 0x00FF00FF,
BLUE = 0x0000FFFF
};
void draw() {
clearColor1i(BLACK); // set clear color
clear(CLEAR_ALL); // clear color, depth, and stencil buffers
// configure Color Combiner (CC) to ignore textures and only use vertex colors
ccFunc(CC_PRESET_SHADE, 0, 0, 0);
pushMatrix();
// draw a triangle
begin(TRIANGLES);
// vertex 1
color1i(RED);
vertex3f(0.0, 1.0, 0.0);
// vertex 2
color1i(GREEN);
vertex3f(-1.0, -1.0, 0.0);
// vertex 3
color1i(BLUE);
vertex3f(1.0, -1.0, 0.0);
end();
popMatrix();
}Check out the ERA-3D Docs!
For building instructions, see the Building page of the documentation.
- SDL3
raymath.hfrom raylibjson.neluafrom nelua-batteries- tiny file dialogs
- stb_image.h
ERA-3D is licensed under the zlib license.
See the LICENSE file for the full license text.
