Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

3 Dimensional Chat / modelling characters - used functions

Author
Message
JeroenNL
21
Years of Service
User Offline
Joined: 4th Sep 2003
Location:
Posted: 17th Dec 2003 16:35 Edited at: 17th Dec 2003 16:36
Hi there,

I'm developing my own 3D modeller called DeleD (as most of you probably know by now ) and I would like to know which functions you guys use most when creating (human) characters. For example, I can imagine you start out with a box, and then you'd split a few faces, extrude them, etc etc. The list of functions would then be:

* split face
* extrude face
* etc...

Could you guys provide me with such a list? I'm trying to set priorities when it comes down to implementing new functions in DeleD. Functions used in character modelling have my priority righ tnow.

Use DeleD to get skilled in 3d editing! Visit http://www.gamefortress.com/delgine for more info.
Turoid
21
Years of Service
User Offline
Joined: 1st Nov 2003
Location: The Netherlands
Posted: 17th Dec 2003 16:57
hee jeroen, hoe maak je zo'n programma toch? dat je polygonen en faces kan bewegen in darkbasic??

if I = 1 then I = 1 else I = 0
JeroenNL
21
Years of Service
User Offline
Joined: 4th Sep 2003
Location:
Posted: 17th Dec 2003 17:38
Translated: Hey Jeroen, how do you make such a program being able to move polygons/faces in Darkbasic?

Answer: I don't. I use Delphi 6 to code my applications. The reason why I am here is because Darkbasic users can use my 3D modeller (or at least, I hope so).

Use DeleD to get skilled in 3d editing! Visit http://www.gamefortress.com/delgine for more info.
Turoid
21
Years of Service
User Offline
Joined: 1st Nov 2003
Location: The Netherlands
Posted: 17th Dec 2003 18:10
Alright thank's

if I = 1 then I = 1 else I = 0
Van B
Moderator
22
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 17th Dec 2003 18:30
Jopie,
You can use memblocks to adjust vertices in DBPro, you can do quite a lot with the data too - you should look for Kevils snippets in the codebase.

Jeroen,
A very important feature is face turning - like if you have a square poly, it has a middle point, being able to rotate this middle seam is a real bonus because it gives so much more control. This is especially true when modelling faces - if you imagine the area where you want to start your nose has a square poly with the seam going the wrong way - being able to quickly and painlessly rotate that would make a lot of character modellers very happy.

Automatic mirroring would be cool - like being able to analyse a model so that mirroring vertices is easier - maybe it could automatically join and weld the middle points.

Not too sure how to describe this, but say you had a cylinder, and you wanted to put a middle set of verts into it - like you'd select one ends vertices, then the other end, then inbetween each pair of verts (they'd be the only 2 verts linked up in the selections) - it sticks a set of verts. When it comes to changing models after UV mapping for animation, you often find you been too stingy where the joints need to go - so being able to quickly loosen the joint up like that would make things nice and easy. Remembering to automatically adjust the UV coords too - the most annoying thing is UV mapping IMO, it's like the model can't be changed once it's textured for fear of having to retexture anything!.

Texture analysis - like if you could check the UV coords and maybe highlight ones that don't have sensible UV maps, like when people plain map a gun with a gun photograph, it could highlight all the cruddy texturing, making it easy to throw in some better coordinates. I don't spend to much time on guns in case you did'nt notice .

One other thing I did with VanSEAM, you could select a polygon, and tri-split it, so the 3 verts are used to create a 4th, middle vert and 2 extra polygons are made with the corners and the new vert. It would be easy to adjust the UV map automatically too.


Van-B


Next time he runs past, GRAB HIM!
Hamish McHaggis
22
Years of Service
User Offline
Joined: 13th Dec 2002
Location: Modgnik Detinu
Posted: 17th Dec 2003 18:41
Any chance of a cut command like in Wings3D? That splits an edge into a specified number of edges, like

- = line
. = vert

.-------------------------. edge

cut 5

.----.----.----.----.----. 5 edges

Do you bite your thumb at me sir?

Athelon XP 1600 Plus - Nvidia Geforce MX400 - 256mb RAM
JeroenNL
21
Years of Service
User Offline
Joined: 4th Sep 2003
Location:
Posted: 17th Dec 2003 19:51
@ Van B: could you tell me a little more about mirroring, joining and welding vertices? Also, I'm not sure I understand your last remark, about the trisplitting of polygons. Care to enlighten me?

@ Hamish: that command (splitting edges) is already in DeleD, working exactly like you described.

Use DeleD to get skilled in 3d editing! Visit http://www.gamefortress.com/delgine for more info.
Hamish McHaggis
22
Years of Service
User Offline
Joined: 13th Dec 2002
Location: Modgnik Detinu
Posted: 17th Dec 2003 21:21
Didn't see that .

Do you bite your thumb at me sir?

Athelon XP 1600 Plus - Nvidia Geforce MX400 - 256mb RAM
Van B
Moderator
22
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 18th Dec 2003 13:25
Ok, firstly Trisplitting:

Get a scrap of paper and draw a triangle, that's your poly - then put a dot in the middle of the triangle, and draw lines to each corner of the triangle, you now have 3 triangles where there used to be one.

I'm not sure how you handle your model data, I stored my vertices, then had a list of polygons with 3 variables for the vertice numbers, then the 'renderer' would genereate the 3D model from the polylist, which would refer to the vert list to get the coordinates. So I could easily share vertices between polygons. It would be possible to delete a polygon without leaving a hole too - you just make a new vertice in the middle of the poly, like the tri-split idea, but you get the vertices the polygon uses - then they're all replaced by the new middle vertice. By replacing I mean any polygon that uses the vertices, will use the new vertice instead - like pinching the polygon downto 1 vert - removing the poly while at the same time closing the hole.

By mirroring I mean taking all the verts on the left hand side of the scene and copying them along the x axis. Most character modellers work in halves, there's little point in duplicating work, so taking half a head and hammering the basic shape into it is a good time-saving technique, you just mirror the head so it's whole. The same is true of most bodyparts. Imagine a character mesh, cut in half down the middle, then each vertice that is <0.0 on the X axis is copied with an inverted x axis. You can be clever by automatically welding the middle verts - vertices close to the middle of the scene might be important, like a seam going down the middle of the face - if a vertice is close to the middle, don't mirror it. A completely automatic mirroring tool would be awesome.

By welding, I mean you replace the instances of one vert with another. Say you had 2 polygons making a square - you'd have 4 corners, 2 of them would have 3 lines comming from them, some would have just 2. The corners with 3 lines would take up 2 vertices, which is not ideal when modelling - so checking for vertices in very close proximity and optimising them so that duplicate vertices are removed is a good idea. Welding also connects the mesh for things like surface normals, a surface normal calulation will take the connected polygons into account, so welding includes all the verts in the calculation (which will mean smoother normals).

IMPORTANT: UV coordinates should always be checked when removing a vertice, if it's UV data is unique it cannot be deleted, the UV data should be compared between the 2 vertices when welding, if the UV data is identical then the weld is fine. There should of course be an option to overide this - but a warning of some kind when UV data is at risk would make things clear.


Van-B


Next time he runs past, GRAB HIM!
JeroenNL
21
Years of Service
User Offline
Joined: 4th Sep 2003
Location:
Posted: 18th Dec 2003 15:52 Edited at: 18th Dec 2003 15:55
Thanks Van B for your explanation. I already implemented some of the stuff you suggested, like mirroring (not as advanced though).

About the splitting: i can do a triangulation (which is a form of splitting) of convex polygons so that the polygon is split up by using the center of the polygon (i call it Centroid Triangulation). Or I just use the first vertice of the polygon and triangulate from there (Fan Triangulation). The thing is that I can have any polygon you like, with any number of vertices you like. I would like to come up with a variety of splitting algorithms suitable for convex polygons with an x number of vertices. Any ideas?

Welding: i've implemented an Average function which snaps the selected vertices to their averaged location. Welding would just mean deleting duplicate vertices, correct?

UV coords: i store UV coordinates per polygon and not per vertice. So vertices are shared amongst polygons but UV coords are not. That means I don't have to check for unique UV coords but I store more data than is absolutely needed. Tradeoff, me thinks.

Use the free 3D modeller DeleD to get skilled in 3d editing! Visit http://www.gamefortress.com/delgine for more info.
Tapewormz
22
Years of Service
User Offline
Joined: 15th Sep 2002
Location: Winnipeg, Mantoba, Canada
Posted: 12th Jan 2004 03:53
3D Studio lets you cut. MilkShape3D version 2.x will allow you to use this feature aswell.
Mussi
22
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 12th Jan 2004 21:09
yes the CUT modifyer is a great one
mesh smooth would be nice, and a symetry modifyer for making a model symetric



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
CPU
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Carlsbad, CA
Posted: 16th Jan 2004 22:10
Texturing texturing texturing, i can't say this enough If any of you has used or is using rhino3d (i know van b does) the ability to edit uv data easily and quickly is rare, rhino is a great modeler but the only aria it lacks in is texturing and animation. I've still been looking for a program that make texturing a model easy, quick, efficient, and that can save the data to the original model. If i could have one function implemented, that would be the one.

Sparring - Loved by many, Pefected by few.
I'm going to live forever, or DIE IN THE ATTEMPT!!!"
>>>>> Check out my alienwhere progress in the W.I.P folder! <<<<

Login to post a reply

Server time is: 2025-06-27 20:14:46
Your offset time is: 2025-06-27 20:14:46