Skip to content

AuzFox/ERA-3D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

100 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ERA-3D

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!

Specifications

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

API Sample

ERA-3D rendering a triangle

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();
}

Documentation

Check out the ERA-3D Docs!

Building

For building instructions, see the Building page of the documentation.

Libraries Used

License

ERA-3D is licensed under the zlib license. See the LICENSE file for the full license text.

About

N64-Inspired 3D Fantasy Console

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors