FANDOM



Wire3D
General Info
Genre(s): Tech Demo
Contributor(s): Kevin Foley
Release Date: 12/11/2014
Development Status: Beta, in development
Version: 0.5.0
Mode(s): Single-Player


An in-progress wireframe 3D render. I didn't follow any tutorials for this so my implementation is a bit different than most 3D renders (I use trig instead of matrix operations). I wasn't originally expecting to get this far but it's been coming along nicely. I have no idea whether my implementation is efficient or not compared to a matrix-based renderer. There is probably plenty of room for performance improvements in this version.

Objects out of view are not processed or rendered so the framerate can change dramatically as objects enter and leave the screen. In the sample scene I have included, the framerate varies between 15 and 30 fps.

Current features:

  • Wireframe 3D rendering with up to ~22 edges onscreen at 60fps or ~40 edges onscreen at 30fps (adding more edges just lowers framerate)
  • Sample model included
  • Objects fade with distance from the camera
  • Camera movement (with d-pad) and rotation (with touchscreen, think Metroid Prime Hunters)
  • Support for defining 3D objects as vertices and edges with true XYZ coordinates
  • Objects can rotate around z-axis
  • Multiple instances of one 3D object with independent positioning and rotation
  • Framerate counter
  • Optional touchscreen radar dots (off by default, impacts performance more than I'd like)

Known bugs:

  • Overflow error when distance to an object is too great

To do

  • Fix overflow error (don't bother with Pythagorean theorem if x or y distance is too great)
  • Handle model instances better
  • Performance optimizations
  • Scaling
Wire3D 050

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.