• Do not use Works in Progress as a way of avoiding the releases system! Works in Progress can be used for sharing early betas and for getting suggestions for improvement. Releases of finished content are not allowed in this forum! If you would like to submit a finished addon, click here for instructions on how to do so.

A question related to SRB2's graphic engine

Status
Not open for further replies.

TelosTurntable

How the turns have tel- tab-
Does SRB2 use Ray-casting or Ray-tracing?
If it's the former, is there a way to break the Ray-casting constraints in software without slowing processing speed unplayably?
 
Last edited:
SRB2 uses neither. It, being derived from Doom, uses its rendering engine, which involves use of a precompiled BSP tree to subdivide the map in two-dimensional space by using various linedefs within the level as the boundaries, then iterating through the tree to find sides, planes, and sprites to render. (Not to mention most raytracing renderers are extremely slow and not used for any real-time rendering such as that in videogames.)

Your second question is incredibly vague and gives no information as to what you want. What constraints are you wanting to break, first of all, and how do you want to break them? Just asking "can the constraints be broken?" gives nothing to go off of.
 
Not exactly sure what you're asking for either. Ken Silvermans' Build engine was similar to the Doom engine, except it used portals for rendering instead of precompiled BSPs, thus allowing for things like movable geometry.
 
SRB2 uses neither. It, being derived from Doom, uses its rendering engine, which involves use of a precompiled BSP tree to subdivide the map in two-dimensional space by using various linedefs within the level as the boundaries, then iterating through the tree to find sides, planes, and sprites to render. (Not to mention most raytracing renderers are extremely slow and not used for any real-time rendering such as that in videogames.)

Your second question is incredibly vague and gives no information as to what you want. What constraints are you wanting to break, first of all, and how do you want to break them? Just asking "can the constraints be broken?" gives nothing to go off of.

Things like rotating on the Z axis.
 
Arbitrary sprite rotation isn't a simple matter in the Doom engine, mostly because all of the renderer code (and even internal graphic formats) assume it's going to draw everything straight down on the screen in vertical columns, and is optimized for such. Doing so might be possible, but it wouldn't be easy, particularly if you're aiming to keep framerate playable.

Rotating the screen would be even worse, since you'd have to account for everything that gets rendered; planes, walls, and sprites. You could get a reasonable facsimile by rendering out some bleed edges and using a post-processing effect to rotate the screen, but you'd have to deal with the view getting fuzzy at odd angles, and a lot of renderer code would need to have limits tweaked to account for rendering overscan without chopping off from the FOV.
 
Last edited:
Status
Not open for further replies.

Who is viewing this thread (Total: 0, Members: 0, Guests: 0)

Back
Top