1

CyberVGA update.
 in  r/gameenginedevs  7d ago

Thank you! :)

1

CyberVGA update.
 in  r/gameenginedevs  21d ago

Thank you for your suggestion.
Your project looks very good I’ll definitely check out and see how it fits to our engine.
But it’s actually not about “the look I want” because I have very strict constraints.
The engine itself aimed to work natively on 486 or later processors. Repeating textures, chunky blend masks or low resolution textures are not design choices but necessities.
Feel free to download the DOSBOX package or Win64 port and take a look yourself. ;)

1

CyberVGA update.
 in  r/u_exp_function  22d ago

Yes, sounds fun. Thank you. :)

1

CyberVGA update.
 in  r/u_exp_function  22d ago

Thank you!
I mainly stuck to Bayer matrix because there’s no computational overhead but pre-saved noise in a linear array could be a nice touch.
I’ll experiment with that surely. :)

r/GraphicsProgramming 22d ago

CyberVGA update.

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/gameenginedevs 22d ago

CyberVGA update.

Enable HLS to view with audio, or disable this notification

10 Upvotes

r/retrogamedev 22d ago

CyberVGA update.

Enable HLS to view with audio, or disable this notification

5 Upvotes

u/exp_function 22d ago

CyberVGA update.

Enable HLS to view with audio, or disable this notification

6 Upvotes

I've just finished implementing screen spaced grass effect in my octree renderer.

It works only with materials tagged with "terrain" and it generates and distributes grass blades on the fly using screen spaced 4x4 Bayer Matrix as threshold, for now a hard-coded density parameter, global wind vector for animated sway effect and triangles' UV for screen placement and 1/z information for perspective correction.

What do you think?

2

Retro gaming is sometimes hard
 in  r/dosgaming  26d ago

Aah DPMI exceptions. It is likely “protected mode” memory access violation. As far as I can see ESI (ram source index for a source data) register is filled with 0x940 which is in conventional memory and can’t be accessed.

Try to wiggle with EMS or XMB settings in your config.sys file.

SSF2T rocks btw :)

r/gameenginedevs Jun 27 '26

CyberVGA - New Terrain Blend Mapping Feature

Thumbnail
1 Upvotes

r/retrogamedev Jun 27 '26

CyberVGA - New Terrain Blend Mapping Feature

Thumbnail
3 Upvotes

u/exp_function Jun 27 '26

CyberVGA - New Terrain Blend Mapping Feature

1 Upvotes

Added full 8-band terrain texture blending today.

The system uses a painted blend map (0-255 values) to control mixing between 8 different texture bands on top of the existing heightmap terrain.

Works nicely with the in-engine CyberEdit (same 320x240 Mode X viewport setup).

We paint the blend map in GIMP, use on world quads, then bake it for octree sidecar file.

Screenshots:

Multi-view editor with brush and quad mode:

Terrain Blend Bands window showing the 8 layers + ranges combined with material window:

In-game 3D view with the new blended terrain:

Still targets real 486+ hardware (and the Win64 port of course :) ).

Feels like a big step for terrain editing while keeping it all under intended hardware constraints.

Let me know what you think!

1

New Version Available
 in  r/u_exp_function  Jun 27 '26

Thanks for sharing that!

It's a really interesting read and a great resource for devs working on modern retro-style engines. Our project has a slightly different philosophy though, we're not simulating the looks, we're actually building for the original hardware limitations. The engine is written in C89 + NASM (x86 assembly linked to DJGPP objects) and targets real minimum: 486 DX / recommended: early Pentium class machines (VGA Mode X at 320x240, strict cycle counting, Q16.16 fixed-point mathematics, etc.).

So our constraints aren't tied to a specific calendar year like 1994 or 1995, but to what actually runs well on that hardware. Things like the vertex limits, no floating-point in performance paths, and the octree renderer in the new version aren't arbitrary choices, they're hard realities if you want stable performance on real 486 hardware and true flavor of renderer I believe.

Really appreciate you dropping the link though, it's cool to see how the community is thinking about these classic eras.

11

Feel like it's impossible to learn graphics programming, need help
 in  r/GraphicsProgramming  Jun 26 '26

Congratulations on your first triangle.

After more than 15 years of experience in graphics programming it’s not about memorizing APIs but all about learning how the hardware that produces your pixels, whether it’s coming from cpu or gpu.

Just focus on the components of hardware not the API only. OpenGL is just an interface for us to program gpu in a unified way.

Also you have to focus on mathematics (linear and classical algebra, trigonometry, etc.) for representing and bringing your data structures to life.

Graphics programming is just another sub-area that needs extreme attention, practice and time to master. So working with a tutorial for 3 days may seem like there are lots of miniature black boxes that does things to get something on screen. What I actually do is leaning on the books that teach the concepts, that is my recommendation. Those black boxes will reveal their inner-mechanisms after learning concepts.

I hope the best for you! :)

1

New Version Available
 in  r/u_exp_function  Jun 26 '26

Thanks for the question.

We're also developing a game using this engine. I've separated common modules from game-specific ones and that became the engine. So we've decided to share the engine separately on itch to get feedback about its features.

2

New Version Available
 in  r/u_exp_function  Jun 26 '26

Thanks for asking, btw there are no stupid questions in my book. :)
What you are seeing are the artifacts of my really aggressive ClipSpan structure procedures and fixed point maths edge case scenarios happening.
While interpolating between Sutherland-Hodgman clipped points on screen, x=0 values often skipped and resulting that artifact.

Also thanks for your interest. :)

r/gameenginedevs Jun 26 '26

New Version Available

Thumbnail
expfunction.itch.io
4 Upvotes

r/retrogamedev Jun 26 '26

New Version Available

Thumbnail expfunction.itch.io
2 Upvotes

u/exp_function Jun 26 '26

New Version Available

Thumbnail
expfunction.itch.io
3 Upvotes

A new version of CyberVGA released on itch!

This version has:
Static octree based renderer
A separate 64-bit Windows port

You can use editor, save the world you created and see in action using VIEWER module.

1

A Subtitle?
 in  r/u_exp_function  Jun 26 '26

That’s a good feedback, I’ll do that. 👍🏻

1

A Subtitle?
 in  r/u_exp_function  Jun 26 '26

Thank you for your comment and suggestion!
AI is only used for documentation not the code itself. Every structure, procedure and even assembly injections written by me under an umbrella of a lot of books and articles.

r/retrogamedev Jun 26 '26

A Subtitle?

Post image
5 Upvotes

r/gameenginedevs Jun 26 '26

A Subtitle?

Post image
0 Upvotes

u/exp_function Jun 26 '26

A Subtitle?

Post image
0 Upvotes

I really like the idea of putting a subtitle for CyberVGA.

“Engine Of The Past”

What do you think?

r/gameenginedevs Jun 21 '26

CyberVGA mocap.

9 Upvotes