Skip to content

Releases: leikareipa/retro-ngon

alpha.8

14 Oct 04:03
Compare
Choose a tag to compare
alpha.8 Pre-release
Pre-release

Changelog:

  • Performance up by 15-20%
  • Rasterizer no longer traces the polygon's entire outline before filling in the horizontal pixel spans; instead, interpolates between edges

alpha.7

04 Oct 21:23
Compare
Choose a tag to compare
alpha.7 Pre-release
Pre-release

Changelog:

  • Face normals
  • Backface culling
  • Performance up by 30-50% (esp. in scenes with heavy use of tiled textures or with large occluding polygons)
  • More render output tests

alpha.6

29 Sep 06:02
Compare
Choose a tag to compare
alpha.6 Pre-release
Pre-release

Changelog:

  • Increased performance by roughly 30%
  • Added full viewport clipping
  • Added per-pixel depth buffering (optional)
  • Added perspective-correct texturing (optional)
  • Added handling of non-unit-range UV coordinates (0 > x > 1)
    • Negative values will flip the texture
    • Values absolutely larger than 1 will wrap around
  • PNG2JSON: Added optional toggle to set which source pixel color to interpret as transparent
  • Laxed requirements of immutability on some data structures
    • E.g. meshes' rotation values are now mutable, so the mesh object doesn't need to be re-created every time

Known new issues:

  • The renderer may fail - either fully or partially - to fill in the last row of pixels on the screen

alpha.5

02 Sep 15:06
Compare
Choose a tag to compare
alpha.5 Pre-release
Pre-release

Changelog:

  • Interpolated near-plane clipping
  • Auxiliary render buffers
  • API reference documentation
  • Inlining of asserts for less reduction in performance

alpha.4

09 Mar 23:41
Compare
Choose a tag to compare
alpha.4 Pre-release
Pre-release

Changelog:

  • More documentation
  • Affine texture-mapping
  • A single distributable source file
  • Some improvement to n-gon clipping: entire n-gons are no longer clipped against the near plane, as only individual vertices now get dropped if they clip, leading to a less jarring visual effect. Still no interpolation to create new vertices at the point of clipping, though
  • PNG2JSON has the option to export to raw RGBA-8888
  • Mesh(), ngon(), and render() now take most of their parameters as properties of an object you pass them
  • You can now get some performance information as a return object from render() - how long the rendering took, etc. It's undocumented, at the moment, but you can look at the source to see what render() returns
  • Performance is probably a little worse than in alpha.3

Notes:

  • The Blender export script is still bad
  • Asset workflow is so-so

alpha.3

25 Feb 15:58
Compare
Choose a tag to compare
alpha.3 Pre-release
Pre-release

Changelog:

  • More documentation on how to use the renderer
  • New 3d asset converters: Blender export script, PNG2JSON
  • Textures have alpha
  • Textures accept Base64-encoded 16-bit color pixels, for reduced file size
  • Fixed camera rotation in render()
  • Near plane is clipped against prior to perspective division, reducing artifacts from objects located behind the camera
  • An n-gon's base color now modulates its texel colors
  • Sin/cos use a lookup table, for added retro vertex wobble
  • Performance is somewhat lower than in alpha.2

alpha.2

17 Feb 06:23
Compare
Choose a tag to compare
alpha.2 Pre-release
Pre-release

Changelog:

  • Notable speedup to textured rendering
  • Cleaned up the directory structure
  • Added a performance tester
  • Rewrote the unit tester

Notable lacks:

  • No frustum clipping yet, so immersive 3d scenes aren't possible
  • No alpha in textures
  • Asset management still in its infancy

alpha.1

18 Jan 12:12
Compare
Choose a tag to compare
alpha.1 Pre-release
Pre-release

Initial release.