| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
the rasterizers now produce a bbox of used fragments/pixels that
are unified at the end of every job/frame. we use that when
drawing so only the part that was rasterized gets sent to devdraw.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
got rid of the bullshit dance between XRGB32 and RGBA32, now
all rasters are RGBA32 and premultiply alpha before loading
up an image and drawing over the destination. this lets the
user compose their own scenes with correct transparency.
no more mediocre clearcolor.
as a consequence drawing got slower, but if i get the turbo
drawing pool working properly that should go away.
textures also take alpha pre-multiplied channels into account,
dividing them when sampling, so loading transparent textures
will show the correct colors.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
now changing the viewport offset will correctly show the
portion of the framebuffer that's visible, including
support for upscaled views.
|
| |
|
|
|
|
|
|
|
|
|
| |
very simple, without anti-aliasing, made for getting
OIT (order independent transparency) rendering of
arbitrary objects.
also added switches for blending, depth testing and the
A-buffer to the camera.
|
| |
|
|
|
|
|
|
|
|
|
| |
putting the duplicate camera in a local variable turned
out to be a bad idea. bring the dynamic version back.
the skybox rendering was affected by the camera fov, which
made it look like it was not really at infinity, so set it
always to 90°.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
it's possible for interactive programs to keep updating
the geometry of the scene during rendering, which caused
primitives to look deformed or shattered in the final
image.
to avoid this we take a snapshot of the current state of
things (scene and camera), and render based on that copy.
|
|
|
|
|
|
| |
we are still doing alpha blending, so we use the
X chan internally, but we don't care about it
when (mem)drawing to the screen.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
> They made two mistakes. they hanged the wrong man and they didn't finish the job.
so Clint Eastwood came back to kick my ass. the mistakes in
question were that the Viewport shouldn't know about double
buffering, conceptually it has a framebuffer and that's it.
the second one was passing it to the renderer, when the
renderer couldn't care less about what a viewport is.
|
|
|
|
|
| |
do the frame buffer clearing and swapping as part
of the rendering process, not within shootcamera.
|
| |
|
| |
|
|
|
|
|
|
| |
also fixed an issue with cliptriangle() where an
entire tri would get discarded if all its vertices
were outside the frustum.
|
| |
|
|
|
|
|
| |
also got rid of Deco. there's no point in having that,
just deal with image(6) files.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
i integrated the renderer i've been developing
on the tinyrend repo and got rid of a bunch of
stuff that's no longer necessary. also began
structuring things to fit the new interface i
have in mind.
there are still some artifacts with the
projection xforms that cause issues with
clipping and division by zero.
|
|
|
|
| |
work. add uv coordinates to the vertex.
|
|
|