Share with us how are you using the powerrrr of the force
Moderator: Alain
by walaber » Mon Aug 23, 2004 5:55 am
indeed. especially once we get more collision primitives...
Independent game developer of (mostly) physics-based games. Creator of "JellyCar" and lead designer of "Where's My Water?"
-
walaber
- Moderator
-
- Posts: 393
- Joined: Wed Mar 17, 2004 3:40 am
- Location: California, USA
-
by BigB » Mon Aug 23, 2004 7:47 am
yup
, lots of potention in this editor.,
Another thing that would be simple to add, would be the ability to place joints , like that we could setup even more complex objects, like a closet, where we could open the door.
Thinking again, it wouldn't be so simple, because somehow we would need to tell the application who connects to who..
-
BigB
-
- Posts: 78
- Joined: Sun Mar 21, 2004 8:08 pm
by walaber » Mon Aug 23, 2004 9:52 am
FILE FORMAT:
- Code: Select all
DESCRIPTION SIZE CONTENTS
----------------+---------------+---------------------
HEADER | 3 BYTES (3) | char string "ndb"
----------------+---------------+---------------------
VISUAL OBJECT
----------------+---------------+---------------------
FileLength | BYTE (1) | visual model filename string length
FileString | CHAR (???) | char string (filename)
Rot.x | DWORD (4) | object x rotation offset
Rot.y | DWORD (4) | object y rotation offset
Rot.z | DWORD (4) | object z rotation offset
Pos.x | DWORD (4) | object x position offset
Pos.y | DWORD (4) | object y position offset
Pos.z | DWORd (4) | object z position offset
----------------+---------------+---------------------
The above values are for offsetting the object, to get the center of rotation
to a more desirable point. in the loader, you should reset the center point (pivot)
of the model to these values.
----------------+---------------+---------------------
ADVANCED VISUAL SETTINGS
----------------+---------------+---------------------
VisualFlag | BYTE (1) | visual settings saved? 1=yes 0=no
ExternalTexFlag | BYTE (1) | external texture used? 1=yes 0=no
ExternalTexLen | BYTE (1) | length of texture file string
ExternalTex | CHAR (???) | char string (filename)
TransFlag | BYTE (1) | transparency on? 1=on 0=off
GhostFlag | BYTE (1) | ghost object? 1=on 0=off
GhostSetting | BYTE (1) | ghost setting (user set)
CullOff | BYTE (1) | object cull off? 1=yes 0=no
----------------+---------------+---------------------
COLLISION PRIMITIVES
----------------+---------------+---------------------
PrimNum | BYTE (1) | Number of primitives used
----------------+---------------+---------------------
(for each primitive:)
----------------+---------------+---------------------
PrimShape | BYTE (1) | Shape. 1 = box, 2 = sphere
Size.x | DWORD (4) | prim size x
Size.y | DWORD (4) | prim size y
Size.z | DWORD (4) | prim size z
----------------+---------------+---------------------
*for a sphere, all three sizes are loaded, but size.x is used for radius.
----------------+---------------+---------------------
Rot.x | DWORD (4) | prim rotation x
Rot.y | DWORD (4) | prim rotation y
Rot.z | DWORD (4) | prim rotation z
Pos.x | DWORD (4) | prim offset x
Pos.y | DWORD (4) | prim offset y
Pos.z | DWORD (4) | prim offset z
----------------+---------------+---------------------
NEWTON SETTINGS
----------------+---------------+---------------------
Mass | DWORD (4) | object mass
Ixx | DWORD (4) | Object Ixx
Iyy | DWORD (4) | Object Iyy
Izz | DWORD (4) | Object Izz
TransCallback | BYTE (1) | use transform callback? 1=yes 0=no
ForceCallback | BYTE (1) | use forceandtorque callback? 1=yes 0=no
ForceOption | BYTE (1) | Force callback option (user set)
DestCallback | BYTE (1) | set destructor callback? 1=yes 0=no
AutoActivate | BYTE (1) | set autoactivate callback? 1=yes 0=no
SaveCollision | BYTE (1) | save collision? 1=yes 0=no (if no, NewtonReleaseCollision)
----------------+---------------+---------------------
END OF FILE
----------------+---------------+---------------------
* if the VisualFlag = 0, the saver skips to PrimNum.
Independent game developer of (mostly) physics-based games. Creator of "JellyCar" and lead designer of "Where's My Water?"
-
walaber
- Moderator
-
- Posts: 393
- Joined: Wed Mar 17, 2004 3:40 am
- Location: California, USA
-
by BigB » Mon Aug 23, 2004 2:13 pm
Thanks Walaber
-
BigB
-
- Posts: 78
- Joined: Sun Mar 21, 2004 8:08 pm
by walaber » Tue Aug 24, 2004 3:29 am
Ragdoll Designer tool in-progress
I'm now working on another editor, again for my in-progress game. This is a ragdoll designer. basically you load a visual object (with skeleton), and set the bones up visually (setting size, etc). the bones are automatically oriented to the skeleton, as Newton requires. I've almost got this program complete as well, just a few features to add, and implement the save/load feature.
This one is particularly designed for use with DBPro, so I don't think the file format will really be of any use to other programmers...
I'll probably have a demo up (like the above editor) sometime tomorrow.
click for a larger screenshot:
Independent game developer of (mostly) physics-based games. Creator of "JellyCar" and lead designer of "Where's My Water?"
-
walaber
- Moderator
-
- Posts: 393
- Joined: Wed Mar 17, 2004 3:40 am
- Location: California, USA
-
by Cheery » Tue Aug 24, 2004 7:42 am
walaber wrote:...This one is particularly designed for use with DBPro, so I don't think the file format will really be of any use to other programmers...
I really think you are underestimating the power of c++!
Like I am underestimating the power of darkbasic pro!
If there are information as bytes, there are information, and it can be looted with c++!
-
Cheery
-
- Posts: 21
- Joined: Sun Jul 11, 2004 1:47 pm
-
by walaber » Wed Aug 25, 2004 2:03 am
I don't mean that someone wouldn't be able to access the data: I just don't think much of it would be any use to a non-DBPro user. when you load a skinned mesh object into DBPro, it assigns an index number to each "limb" (bone). My editor saves which "limb" to attach each ragdoll bone to. so when you build the ragdoll, you get the rotation matrix for that "limb" as the matrix for the joint.
but DBPro has a few issues with rotation, so I also save which "limb" is the parent, and generate the rotation matrices myself at generation time.
in other words, the bone size information, bone heirarchy, etc. are universal, but the parts that link the bones to the model are very DBPro specific, and that's why I doubt they'd be of much use to other users.
either way I've got it working really nice now, almost complete:
(click for 640x480 screenshot)
Independent game developer of (mostly) physics-based games. Creator of "JellyCar" and lead designer of "Where's My Water?"
-
walaber
- Moderator
-
- Posts: 393
- Joined: Wed Mar 17, 2004 3:40 am
- Location: California, USA
-
by walaber » Thu Aug 26, 2004 9:13 pm
I got the ragdoll designer working, at least with my own model.
you should be able to create and test a ragdoll with any properly setup .x file (it must have an animation of some kind to work).
click for larger screenshots:
BETA DOWNLOAD - includes ragdoll designer + text ragdoll loader .exe, plus the "franky" example in the screenshots.
Independent game developer of (mostly) physics-based games. Creator of "JellyCar" and lead designer of "Where's My Water?"
-
walaber
- Moderator
-
- Posts: 393
- Joined: Wed Mar 17, 2004 3:40 am
- Location: California, USA
-
by walaber » Thu Sep 23, 2004 2:16 am
I'm thinking of using this (in realtime of course) as the splash screen for my Newton projects...
LOGO AVI - about 140KB
Independent game developer of (mostly) physics-based games. Creator of "JellyCar" and lead designer of "Where's My Water?"
-
walaber
- Moderator
-
- Posts: 393
- Joined: Wed Mar 17, 2004 3:40 am
- Location: California, USA
-
by zircher » Thu Sep 23, 2004 8:29 am
Sweet! I literally didn't see that coming. The logo was seamless until impacted. Is that something you're planning on donating to the Newton community? I'd like to borrow it.
--
TAZ
-
zircher
-
- Posts: 2
- Joined: Wed Sep 22, 2004 4:53 pm
- Location: OKC, OK, USA
-
by Galahad » Wed May 31, 2006 8:53 pm
I'm not sure if you were aware of this yet, but with the 6.0 upgrade of Dark Basic Pro they added a Floor command that messes up alot of the tutorials that come with the wrapper (it uses a variable named floor). It returns an unusable variable name error whenever it compiles. Just thought I'd let you know in case you didn't know already.
-
Galahad
-
- Posts: 1
- Joined: Sun Jan 08, 2006 8:08 pm
-
Return to User Gallery
Who is online
Users browsing this forum: No registered users and 3 guests