Difference between revisions of "User:Substitute541/Love3D"
m (your vs. you're) |
m (→Instructions: updated) |
||
Line 26: | Line 26: | ||
'''How to load Light3D''' | '''How to load Light3D''' | ||
* Put Light3D.lua in your love file | * Put Light3D.lua in your love file | ||
− | * | + | * Love3D.lua will automatically require Light3D.lua when it exists. So just load it inside love.load() AFTER loading Love3D. |
<source lang="lua"> | <source lang="lua"> | ||
− | |||
− | |||
− | |||
− | |||
love3D.light.load() | love3D.light.load() | ||
</source> | </source> |
Revision as of 05:54, 18 October 2012
This library is still in beta, you can expect some bugs... |
IF YOU'RE LOOKING FOR ANOTHER LIBRARY OF THE SAME NAME SEE : L3D Library
This library allows you to simulate pseudo-3D, although you can model some basic 3D polyhedrons with the 3D triangles. There are also other functions too.
Download
|The Love3D Library.zip Current Version : 0.3.0 [The Light Update]
Instructions
- Unzip the .zip file
- If you are using this, put the Love3D.lua in your .love file
- On the outside of any function in main.lua add :
require "Love3D"
- Then on the INSIDE of love.load(), near the end of the function, add :
love3D.load(fl, vpX, vpY)
- (Note : FL means Focal Length. This value is usually 250. vp means Vanishing Point) And you're done! Just call the functions and you're ready to go!
How to load Light3D
- Put Light3D.lua in your love file
- Love3D.lua will automatically require Light3D.lua when it exists. So just load it inside love.load() AFTER loading Love3D.
love3D.light.load()
- And you're done!
Functions
Love3D Functions
- love3D.load. Loads the library, must be called in the love.load function
- love3D.calculatePointPosition. Calculates point position by transforming the 3D coordinates to 2D
- love3D.graphics.quad. Draws a quadrilateral
- love3D.graphics.triangle. Draws a triangle
- love3D.graphics.lineSegment2D. Draws a 2D line segmentin 3D space
- love3D.graphics.draw2D. Draws a 2D image in 3D space
- love3D.func.rotateX/Y/Z. Rotates a point in a chosen center point
- love3D.func.checkDistCollision. Checks if two circular objects in 3D space are colliding
- love3D.func.getAvgZTriangle/Quad. Finds the average Z of a triangle/quad
- love3D.func.zSortTriangle/Quad. Sorts a triangle/quad
- love3D.func.zSortPoint. Sorts a table of points
Light3D Functions
- love3D.light.load. Loads Light3D.lua
- love3D.light.set. Sets all the variables
- love3D.light.getLightFactor. Gets the light factor (only used by love3D.light.getNewColor)
- love3D.light.getNewColor. Gets the new color
Possible uses
- Spinning cube for menu screens
- A more accurate Parallax Scrolling