Page 2 of 21

Re: LOVE3D: For Realsies

Posted: Sat Oct 18, 2014 8:52 am
by Doctory
this makes everything i want to make meaningless

Re: LOVE3D: For Realsies

Posted: Sat Oct 18, 2014 9:24 am
by Karai17
No way! Once we work out some of the kinks and do a proper release, you can use this as a stepping stone to build on!

Re: LOVE3D: For Realsies

Posted: Sat Oct 18, 2014 5:30 pm
by kikito
I would only think about using this if it had a proper "lövely" interface. 3-d tends to make things complex, and I am not sure of how to match that with a streamlined API. I hope you are not just doing OpenGL calls from Lua (maybe you mentioned it somewhere, but I'm on my mobile phone until Monday)

Re: LOVE3D: For Realsies

Posted: Sat Oct 18, 2014 5:44 pm
by Karai17
Some things are raw OpenGL calls, but they aren't heavily used, just enabling a few features. The key here is the Vertex Buffer that slime is (slowly) adding into LOVE proper which allows you to, well, buffer vertices. This allows us to send bajillions of vertices to the GPU at once, instead of rendering them via CPU.

On top of that, we built a custom IQE model loader which allows us to export rigged models and full animations from Blender and import them into LOVE. Parsing an IQE file is very slow however, so our next step will probably be to load an IQM model via FFI. That should make load times blazingly fast.

This is all preliminary "lol we got it working" code, and we plan to refine it into something more usable. We just felt like showing off what we accomplished! :D

Final note: Everything here works very well with the LOVE API. Ultimately 3D is simply 2D with lots of matrix transforms and such, so it's not too far out of scope for LOVE to be able to handle this. Some additions to the API are needed to fully realize a 3D environment, none of which would affect LOVE's 2D API. It's just a matter of convincing the LOVE devs to spend time adding those features which is understandably difficult since they are focusing more on the 2D aspects of LOVE and anything we ask them to consider is not much of a priority.

Even without things like Uniform Buffers, I'm quite impressed that I can pull off four million triangles without dropping my frame rate below 60 on a mid-tier GPU (GTX 550 Ti), though I suspect when we spend some time optimizing, that will increase significantly.

Re: LOVE3D: For Realsies

Posted: Sat Oct 18, 2014 5:58 pm
by slime
This is the branch of LÖVE that adds the VertexBuffer API (for use with Meshes.) As mentioned, I'm not completely happy with it yet.

Re: LOVE3D: For Realsies

Posted: Sat Oct 18, 2014 5:59 pm
by Karai17
You should add in our bug fix so other people can compile it, too D:

Re: LOVE3D: For Realsies

Posted: Tue Oct 21, 2014 10:49 pm
by Karai17


Poked around a bit with this today. We should probably have a Linux and Mac build ready soon for people to play with!

Re: LOVE3D: For Realsies

Posted: Tue Oct 21, 2014 11:30 pm
by CrackedP0t
That's hilarious!
I can't wait for the Linux build.

Re: LOVE3D: For Realsies

Posted: Wed Oct 22, 2014 4:20 am
by Davidobot
Karai17 wrote:
Poked around a bit with this today. We should probably have a Linux and Mac build ready soon for people to play with!
I expected you to make a Girls und Panzer thing. Looks great!

Re: LOVE3D: For Realsies

Posted: Wed Oct 22, 2014 6:53 pm
by shakesoda
Image