| We hope you enjoy your visit. You're currently viewing the Ultimate 3D Community as a guest. This means that you can only read posts, but can not create posts or topics by yourself. To be able to post you need to register. Then you can participate in the community active and use many member-only features such as customizing your profile, sending personal messages, and voting in polls. Registration is simple, fast, and completely free. Join our community! If you are already a member please log in to your account to access all of our features: |
| The latitude/longitude screw up; Found two mistakes in one day | |
|---|---|
| Topic Started: Aug 12 2009, 04:14 PM (517 Views) | |
| Dr. Best | Aug 12 2009, 04:14 PM Post #1 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Hi everybody, this topic has a bit of bad news. It is not that important, but I wanted to inform you about it. There is a mistake in the documentation of Ultimate 3D and a flaw in the Ultimate 3D model file format. Some advanced users might find this interesting. Yesterday I realized that I have been mixing up the terms latitude and longitude over years. The latitude and longitude angles can be used to identify a point on a sphere. Such a point is a normalized vector and can give a direction. Speaking in terms of a globe the longitude is the angle, which changes, if you move to the west or to the east, but doesn't change, if you move to the south or to the north. The latitude changes, if you move to the south or to the north, but doesn't change, if you move to the west or to the east. My description of longitude and latitude in the documentation of Ultimate 3D says the opposite and the parameters are used accordingly. Ultimate 3D 2.1.2 will come with a new help file in which this will be corrected (the parameter names will be swapped and the explanations will be corrected). CalculateVectorLongitude(...) and ComputeVectorLatitude(...) will keep their names and the documentation will mention that they actually do not return what the function names imply. However I am not going to change it in the comments in the scripts or in the code of the Tech Demo. So just remember that longitude and latitude do not mean what the documentation used to say and that it is wrong in the comments of all scripts. While fixing this mistake in the code of Ultimate 3D 3.0 I found another mistake in the Ultimate 3D model file format. This format uses latitude and longitude angles to save normal vectors in only 16 bits. It turned out that a mistake, which probably resulted from the mix up of latitude and longitude resulted in an inefficient use of these 16 bits. The latitude used only 6 bits while the longitude used the 8 bits it was supposed to use. Due to this mistake the precision of the normals is lower than expected. It will never be noticeable in lighting or environment mapping though. The error, which results from the wrongly compressed normals is somewhere around 1°, so this is nothing you need to worry about. It is too late to fix this in version 1.0 of the Ultimate 3D model file format, but I decided to change it in version 2.0 of the file format (this is the version, which is used by Ultimate 3D 3.0). While I was at it I also increased the precision of the normals by using 32-bits instead of 16-bits. In case anybody has already been using version 2.0 of the file format for anything (that is very unlikely since the only thing that is public about it is the Blender export plugin and the official specification), he should contact me since I can provide a file conversion utility. The documentation of the old file format now mentions the mistake, the documentation of the new format gives the new specification and the Blender plugin has been updated to export valid files using version 2.0 of the file format on request. With friendly regards, Dr. Best |
![]() |
|
| MysteriXYZ | Aug 12 2009, 07:18 PM Post #2 |
|
Master Matrix Masher
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
So THAT's why the abductions carried out by the Mothership have been going wrong lately, after I used U3D to upgrade its navigation system! Just now that I desperately needed a new human host for my astral essence .Seriously though, yeah that news is quite... disorienting .
|
| U3D is like candy; after extensive consumption, it's Best to brush. | |
![]() |
|
| Synexn-Prime | Aug 12 2009, 08:35 PM Post #3 |
|
Sierra Prime GF32 : Unit 7
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
So my code hacks have reason! Wait...I thought latitude was east to west. Oh shit. Wow. No. The LINES are east to west. Arg. Okay, so latitude is up and down, longitude is left and right. Why the heck can't we just stay with rotx and roty? Anyhow, great news! Edited by Synexn-Prime, Aug 12 2009, 08:39 PM.
|
|
Synexn-Prime, the Bigger Sister. Prepare to watch her fly. Watch that tear shatter the steel. 2012. ![]() ![]() Current Stone: Water : Prepare to help her survive. June 2010. formerly known as skarik | |
![]() |
|
| Despellanion | Aug 12 2009, 09:01 PM Post #4 |
|
The Black Curtain
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Well this is pretty confusing I must say
|
![]() It's an MMORPG, you rtard! | |
![]() |
|
| Dr. Best | Aug 12 2009, 09:57 PM Post #5 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Yeah, this whole thing really is quite confusing. I could never remember which angle was which one. Too bad that I always looked it up in the documentation of Ultimate 3D . This really requires some mnemonics. My new one is that the longitude has the long interval for its values (-180° to 180° instead of -90° to 90°).@ MysteriXYZ Hopefully you will catch up on your schedule .@ skarik Well, rotx and roty have always been screwed up since roty rotates along z while rotz rotates along y .
|
![]() |
|
| ashrat3000 | Aug 12 2009, 10:02 PM Post #6 |
|
u3d raytracer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
oh HO. So I wasn't going crazy this whole time. |
|
그대를 사랑해 | |
![]() |
|
| Gandalf20000 | Aug 13 2009, 12:04 AM Post #7 |
![]()
DirectX Newbie
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Nah, that happened long ago. Just kidding around. I always kind of wondered why latitude was the horizontal movement in U3D, and longitude the vertical. Maybe you got them confused because latitude lines are horizontal, and longitude lines are vertical?
Ogre3d is quite disorienting after using U3D because of that. |
| A website about my dad's books | |
![]() |
|
| Synexn-Prime | Aug 13 2009, 05:28 AM Post #8 |
|
Sierra Prime GF32 : Unit 7
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Well, I already know that. I mean, when using other engines, I end up converting my rotations to U3D rotations anyways, so why change it?
Edited by Synexn-Prime, Aug 13 2009, 05:28 AM.
|
|
Synexn-Prime, the Bigger Sister. Prepare to watch her fly. Watch that tear shatter the steel. 2012. ![]() ![]() Current Stone: Water : Prepare to help her survive. June 2010. formerly known as skarik | |
![]() |
|
| Dr. Best | Aug 13 2009, 11:56 AM Post #9 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Yeah, it probably has been something like this. @ skarik In my opinion it is best to make used to yaw, pitch and roll. This are well-known, reasonable and widely used names. |
![]() |
|
| omicronsoftware | Aug 21 2009, 10:59 PM Post #10 |
|
Advanced Member
![]() ![]() ![]() ![]() ![]()
|
Well, while you're at it I would appreciate the chance to make >14999 models in a U3D scene... ...and trust me, I need it. My 'typical' scene may have better than 524,288 models (granted, this will not happen normally, but still...) and I would appreciate the unlock. I'm also running into a couple of inscrutable bugs with my megaterrain (256x256) that I would appreciate if you could fix - for one thing, I'm experiencing the strange lighting patches others have mentioned when I don't use custom lightmaps. For another, something is causing momentary slowdowns every couple of seconds - and it's nothing to do with my code, as I'm not doing any code in the terrain step at all. I think it might have to do with terrain LOD recalculation. I would appreciate a fix. Edited by omicronsoftware, Aug 21 2009, 11:08 PM.
|
![]() |
|
| Synexn-Prime | Aug 21 2009, 11:48 PM Post #11 |
|
Sierra Prime GF32 : Unit 7
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Ah gats, that would screw up so many of the index codes I have in Stickman and other projects.
Make sure it's not a cube map and it's definitely your terrain. I think it's been discussed before. Edited by Synexn-Prime, Aug 21 2009, 11:49 PM.
|
|
Synexn-Prime, the Bigger Sister. Prepare to watch her fly. Watch that tear shatter the steel. 2012. ![]() ![]() Current Stone: Water : Prepare to help her survive. June 2010. formerly known as skarik | |
![]() |
|
| omicronsoftware | Aug 22 2009, 12:41 AM Post #12 |
|
Advanced Member
![]() ![]() ![]() ![]() ![]()
|
No cube maps. I would like to see where it was discussed, if you have a reference, though. |
![]() |
|
| Synexn-Prime | Aug 22 2009, 03:14 AM Post #13 |
|
Sierra Prime GF32 : Unit 7
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Not sure if it was discussed publicly, but I remember pointing it out to Gandalf when working on his game's engine. I then noticed it happens in the Fire and Water demo. I don't really use terrains, so I don't know, but it seems to be linked with them. |
|
Synexn-Prime, the Bigger Sister. Prepare to watch her fly. Watch that tear shatter the steel. 2012. ![]() ![]() Current Stone: Water : Prepare to help her survive. June 2010. formerly known as skarik | |
![]() |
|
| Sothh | Aug 22 2009, 09:06 PM Post #14 |
|
Shaman Of Time
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
If you add this to the u3d update it would screw up the programing we have already done. So I might not update. |
If you had my mind, you could rule the world...![]() My website: Immortal Gaming Freelancer.com You can make money programing! | |
![]() |
|
| Dr. Best | Aug 22 2009, 09:26 PM Post #15 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Just contact me right after the release of the next fixed DLL and I will compile a special DLL for you. It is mostly work for my CPU. I just have to enter a number and press F7 .I do not want to demotivate you, but I can not provide you the support you deserve. Ultimate 3D for Game Maker is discontinued and it is discontinued for good reasons. Basing games with high quality graphics upon Game Maker is simply not appropriate. Of course there could be better engines for it, but the basic problems would remain. Ultimate 3D will not be such a better engine. I am really getting tired of debugging Ultimate 3D 2.1.x. In big parts its code is quite messy, it uses a very old version of Direct3D without any Vista compatible debug tools and debugging does not get any easier through the fact that it is Game Maker driven. I can have a look at your light mapping problems, if you send me an application to reconstruct them. With the sudden slowdowns it is a different matter. There will be a nice debug tool to analyze this in detail quite soon (without mentioning details), but if you are right assuming that it is related to the LoD recalculation, it is a very basic problem in the terrain algorithm of Ultimate 3D 2.1. Changing it would mean an effort, which I will not invest into a discontinued project. I have seen Dawn of Civilization and it is impressive what you have done with Ultimate 3D and Game Maker. It proves that you are a talented programmer. You would probably get significantly further, if you would learn a more serious programming language than Game Maker to use a better 3D engine than Ultimate 3D. |
![]() |
|
| « Previous Topic · Announcements · Next Topic » |





![]](http://209.85.48.18/static/1/pip_r.png)



.
.



. This really requires some mnemonics. My new one is that the longitude has the long interval for its values (-180° to 180° instead of -90° to 90°).
.
.


11:19 PM Mar 11