forked from Ports/goldeneye-pc-port
5a5c73de56708f70bfe024bb09fe263436dc64d5
zbufClearCurrentPlayer (viewport.c) clears the N64 Z buffer with the 'point the colour image at the Z buffer and gDPFillRectangle it' idiom. fast3d does not emulate that: gfx_dp_fill_rectangle bails when color_image_address == z_buf_address assuming glClear already cleared depth, but the frame-start clear_framebuffer(true,false) is colour-only. fast3d expects G_CLEAR_DEPTH_EXT (0x44) for a real depth clear and GE never emits it. Here the two addresses don't even match (gDPSetDepthImage(z_buffer & ~0x3F) vs gDPSetColorImage(K0_TO_PHYSICAL)) so the packed-Z fill colour is scribbled onto the framebuffer instead. Net: every in-level frame rendered against a stale/garbage depth buffer, all ~160k room triangles failed the Z test, only skyRender's background fill survived -> flat dark-blue screen + HUD. PORT branch in zbufClearCurrentPlayer emits a bare G_CLEAR_DEPTH_EXT and returns, skipping the N64 idiom (a no-op / harmful in fast3d anyway). Verified -level_09: 90% flat sky-colour -> 2585 distinct colours, sky 16%; recognisable BUNKER1 (textured walls, storage racks, floor). 70s crash-free. Adds GE_D104 room-render-pass probe in bg.c (gated, capped). Remaining: dark-blue wedge (geometry gap) + brown band top third (ceiling tex); then struct player weapon/offset pass; then D75(b).
Goldeneye 007
About this repository
This is a WIP decompilation of Goldeneye 007!
It builds the following ROMs:
- ge007.u.z64
sha1: abe01e4aeb033b6c0836819f549c791b26cfde83 - ge007.j.z64
sha1: 2a5dade32f7fad6c73c659d2026994632c1b3174 - ge007.e.z64
sha1: 167c3c433dec1f1eb921736f7d53fac8cb45ee31
Note: This repository does not include all assets necessary for compiling the ROMs. A prior copy of the game is required to extract the assets.
Documentation
- Setup Guide: useful information about installing the necessary dependencies and how to use it
- Structure Guide: learn more about the project structure of this repository
- Style Guide: code style conventions if you want to contribute code
Languages
C
92.9%
C++
2.8%
Python
1.8%
Assembly
1.2%
HTML
0.4%
Other
0.7%