LDraw.org Discussion Forums

Full Version: Questions about license and conversion of rotation matrix
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Hello everyone!

Are you allowed to create a software application that uses the LDR file format (the sets, not the parts) without asking or do I have to register my software somewhere? Because I am working on a game in which you build official and custom sets from the point of view of a minifig and it uses the LDR format to place all the bricks at the right position and players can import their own LDR files as long as they only use the parts that I have modeled for the game (it doesn't use any LDraw parts).

My second question is related to the first as I have a problem with the game. To be more precise, I have trouble converting the LDraw coordinate system to the game engine's system (Unreal Engine 4):
[attachment=1608]

In the engine's visual scripting component I hooked up the values like this:
[attachment=1609]

On the left you see the index of a line that starts with "1" and all the green 1s in the center column of the image can either be 1 or -1. I would have done it the brute force method and try all combinations but there are 1024 of them which would take too long. Most parts are placed correctly, it's just the angled pieces such as these flowers:
[attachment=1610]

They are correctly placed inside the LDR file as well as in my modeling software. If someone with a sharper mind than mine could tell me which values I have to change to convert the axes correctly, I'd be very grateful.

Thank you in advance!

PS: I hope this is the right place for this question.
Matthias Deinert Wrote:Hello everyone!

Are you allowed to create a software application that uses the LDR file format (the sets, not the parts) without asking or do I have to register my software somewhere? Because I am working on a game in which you build official and custom sets from the point of view of a minifig and it uses the LDR format to place all the bricks at the right position and players can import their own LDR files as long as they only use the parts that I have modeled for the game (it doesn't use any LDraw parts).

Short answer, yes. The licence stuff can be found here:

http://www.ldraw.org/article/227.html

while LDraw.org policies and procedures are here:

http://www.ldraw.org/article/281.html

w.
I can't specifically answer your coordinate question, but I'm pretty sure that LDraw uses a left-handed coordinate system, with "up" being along the -Y axis in that system. OpenGL and Direct3D use a right-handed coordinate system, and "up" is usually along the +Z axis, although that's up to you.
Willy Tschager Wrote:Short answer, yes.
Thanks for linking the articles. Unfortunatey I cannot access them right now (too many connections). By "yes" do you mean yes to using it without asking or yes to registering my software?
I googled "left handed to right handed coordinate conversion" and found some useful answers but I'm afraid it's too complicated for me.
Yes means using without registration ... but:

You are free:
* to copy - distribute, display, and use the CA approved LDraw Parts Library
* to make derivative works
* to make commercial use of the CA approved LDraw Parts Library

Under the following conditions:
Attribution - You must give the original author credit.
The LDraw Steering Committee (SteerCo) also holds an attribution to 'The LDraw Parts Library' in such Derivative Works to be sufficient in lieu of a full list of authors.
For any reuse or distribution, you must make clear to others the licence terms of this library.
Any of these conditions can be waived if you get permission from the copyright holder.
Your fair use and other rights are in no way affected by the above.

Hope this helps,

w.
This really helps. Thank you!
I would try setting each of the 1s in fields 5 through 13 to -1, one at a time. It's possible that only one of them needs to be negative, and that's a short enough list to try. Also, if I had to guess, I would guess that either field 9 or 12 is the one that needs to be -1.
I tried to set each one to -1 one after the other. But it only made it worse in some cases. Since I can't release it in this state, I will probably try to create a function which will automatically go through each of the 1024 combinations and I pause it when everything is right.
If i understand the problem correctly I think you need a 90 deg (clockwise) rotation around X and a mirror on Y

1 0 0 0 0 -1 0 -1 0
Pages: 1 2 3