Featured Member Projects > gLib 3D polygon library (TI-83+/84+/CE/83PCE)

gLib a fast 3D asm/axiom library

(1/101) > >>

TheMachine02:
[cross posted from various site]

As some of you already know, I passed the last few month to convert GLib to an axiom, and if you doesn't know/or guess it, well SURPRISE !  :
I am proud to finally present this works, and hope we will be able to see some 3D project appears. Of course keep in mind
that this is a calculator engine, even if performances are definitly WAY more superior to axe version (thanks to asm/code refactoring).

In cliping, for example, I've got almost a 50%, even 55% performances boost....

For the new features/ changes from the axe version :
-library now use matrix, way more powerful than the previous method that I used, and for now faster
-VBO has been limited to 8 and for now can't be supressed (but don't worry you will soon be able to do that, and I'll post in tuto a way to do it from axe point of view)
-Many many many optimization, size wise and speed wise. Standard cube (example provided) run at more than 40 fps ....

Anyway, the little test screen :



note that the white a the begining is definitly a gif bug >_>

And of course, the download is attached. (I hope I don't forget anything in it !) Wait a little for a tuto update, and you will be able to play with it at is full potential  ;)
Concerning the source, I am pretty sure that Asm guru will find a lot, lot of optimization, feel free to take a look  ;D
Also, there is most likely going to have update, for example new optimization, bug fixes, but the syntax won't hopefully change (except if a small change can boost performance like hell  :P)

EDIT : there will be a change in syntax, cause this change does indeed increase performance like hell  :P


Almost finished tuto: https://codewalr.us/index.php?topic=692.msg21406#msg21406

gLib is making is way to color calculator and ez80 !! Screenies in the thread.



The download is obsolete, there is a new version (4.0.0) in the tuto thread  ;)

pimathbrainiac:
YAY! Now for that portal game... *runs*

I can't wait for the tutorial. This will be really useful!

Snektron:
I've actually been working on some 3d projection myself :)
ASM only though, and so far it has only some basic MultiplyMM and
MultiplyMV, but it is quite optimized (and big, MultiplyMM is 400 row, excl macros).
Anyway, im interested in how you do your calculations? Floating points or
just signed ints? Im using zeda's 24-bit float lib :)
And great work! :D

TheMachine02:
definitly signed int, as 24 bits float will definitly leed to pretty much sslllooow thing. As we don't have many cycles for calculation, it could only be viable with int. (Altough that maybe half float could be use - 16 bit float, with 8bit mantissa, 7bit exponnent, 1bit sign, allowing doing only a 8x8 multiplication for multiplying two numbers)
My projection code is pretty much slow, since I use division. (altough that I made a fast math one, but limited in range) You can look at the code if you want  ;)

Snektron:
Ah, i was thinking about 16 bit signed int when i started, but i felt that wouldnt be precise enough :/
And i will defenitely look at your src :)

Navigation

[0] Message Index

[#] Next page

Go to full version