Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

why only primitives?

Eep Quirk
Absolutely Relative
Join date: 15 Dec 2004
Posts: 1,211
12-16-2004 11:57
I want to make efficiently modelled objects but mindlessly clumping primitives together isn't the way to do this. Is there not a way to use a REAL modeller (3DS Max, Maya, trueSpace, Lightwave, etc) to make a model and import into SL somehow? Better yet, allow polygon/vertex modelling right into SL...
Maxx Monde
Registered User
Join date: 14 Nov 2003
Posts: 1,848
12-16-2004 12:05
One answer I can offer is the need to streamline delivery of model data to a client, that could potentially see lots and lots of objects at once. This is why we have preset shapes or primitives to work with. As you can probably predict, if Linden Lab allowed custom meshes, the first guy that uploaded his racecar with 20,000 polys per wheel would pretty much ruin it for everyone. There's a tradeoff between built in shapes versus free-form modeling, and I think LL did a good job considering everything.

Could we use off-world editing and import? Sure, but it won't be with custom meshes anytime soon, I can certainly bet you that. People have made some really nice things with what we *do* have, so I don't think they are that limiting, really. Just takes a different mindset on how to break things down and build them.

Hope that helps somewhat to understand the variables involved.
Psyra Extraordinaire
Corra Nacunda Chieftain
Join date: 24 Jul 2004
Posts: 1,533
12-16-2004 12:19
The main reason for "only prims" is because when you edit a prim, you see four small pages of information that stores everything about that prim, how it is shaped, the angle it sits at, what texture is on it, and all of that. When all cupped together into a hex system it can pretty much be summed up as one prim taking up... well, a miniscule bit of memory. A complex object of 100 prims could take as little as 10-30k of actual file "guts" space.

I've seen pretty simple 3DSmax (or Lightwave3D or others) meshes of 130+k, as much as 9 megs for a particular Formula 1 race car..... :)

I'd rather stream that little bit of data than so much for a single vehicle. ;>
_____________________
E-Mail Psyra at psyralbakor_at_yahoo_dot_com, Visit my Webpage at www.psyra.ca :)

Visit me in-world at the Avaria sims, in Grendel's Children! ^^
Aestival Cohen
half pint half drunk up
Join date: 2 Sep 2004
Posts: 311
12-16-2004 12:31
I dunno about all the other trade off but I kinda like making stuff out of prims.

It's kinda like a puzzle and kinda like a craft. It's relaxing to do and rewarding when you make something look good... like Psyra's amazing avatars! :eek: :D
_____________________
=^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^=
Luverly FLICKR photos!
=^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^=
Eep Quirk
Absolutely Relative
Join date: 15 Dec 2004
Posts: 1,211
12-16-2004 12:37
Well, objects can be as simple as a single polygon or as complex as an infinite amount of polygons--it all depends on the modeller. But the problem with primitives is all of the wasted, covered polygons. For example, butting up 2 cubes together covers 2 sides (4 polys). Also, since 2 cubes are now together, their sides (2 polys per face x2 = 4 polys) can be reduced further (2 only 2 polys), eliminating more polys.

Creating walkways (sidewalks, roads, paths, etc) by butting up cubes wastes a LOT of polygons--and the undersides are usually unnecessary, too.

SL can really start lagging with all of the wasted polygons and it would at least be nice to be able to delete and merge primitive polygons/faces/sides/whatever.

Also, why no way to specify the number of sides of a primitive? Spheres, torii, cylinders, cones, etc are VERY wasteful of polys...

Puzzles are fine but building LEGO style is a VERY wasteful method of 3D modelling if it's not designed to be efficient and optimized for rendering.
NumTee Flytrap
Registered User
Join date: 12 Dec 2004
Posts: 9
12-16-2004 13:19
I have to agree that it would be good to specify the amount of sides to a primitive - a feature that wouldn't up the file size really either, as its one more small bit of information.

Its fairly obvious that although polygonal meshes are far far better for our computers graphics cards they are so much bigger in terms of file size. For a primitive the client all ready knows almost everything about it, then just applies all the little changes someone has made to that basic template. Data for custom polygonal meshes is arranged by specifying the relative location of every single vertex that makes up that model - there is no simple template, just loads of points arranged in a particular order. This is blatantly going to result in a much much higher file size.

I must admit that personally I prefer polygon modelling, but the whole content delivery system of Second Life just could not handle it . These days I think bandwidth limits a game's scope a LOT more than graphics capabilities, so optimising SL for bandwidth rather than graphics considerations has to take priority.

Having said that I would at least like a way to model offline in a Linden Labs developed primitive modelling program. I know its cool to be able to do it in game, but I just find it too cumbersome.
Loki Pico
Registered User
Join date: 20 Jun 2003
Posts: 1,938
12-16-2004 13:25
I have always thought SL is good at allowing us to do many things. But, other applications that are specifically designed to do certain things do a much better job of that. We can model, fly planes, race cars, shoot guns, and chat. But, 3Ds Max, IL2 Sturmovik, GTR, Half Life 2, and MSN Messenger (maybe not) will all be better at doing those specific tasks. Thats all they have to do.

I think its pretty amazing we can build something in real time while someone else watches. Just play with the tools we have, you may surprise yourself. Texturing can go a long way with making simple objects look excellent as well, just get in there and play.

SL is still pretty young too, no telling what the future holds.
Olympia Rebus
Muse of Chaos
Join date: 22 Feb 2004
Posts: 1,831
12-16-2004 13:32
From: Aestival Cohen
I dunno about all the other trade off but I kinda like making stuff out of prims.

It's kinda like a puzzle and kinda like a craft. It's relaxing to do and rewarding when you make something look good... like Psyra's amazing avatars! :eek: :D


Same here.
As someone who was trained to build and edit meshes in 3DSmax, at first I was dissapointed that we only had "building blocks" to make stuff.
Since then I've grown quite fond of prim building- I agree it's very much like a puzzle or craft to work with them, particularly when trying to make more organic stuff.

Here's an example (probably posted before) of a recent thing I made out of those so-called building blocks. I can't argue that it's the most efficient system, but I do find them fun to play with.
_____________________
Psyra Extraordinaire
Corra Nacunda Chieftain
Join date: 24 Jul 2004
Posts: 1,533
12-16-2004 13:48
From: Olympia Rebus
Here's an example (probably posted before) of a recent thing I made out of those so-called building blocks.


Awwwwrr, izzn't he cuuuuuute? ^^
_____________________
E-Mail Psyra at psyralbakor_at_yahoo_dot_com, Visit my Webpage at www.psyra.ca :)

Visit me in-world at the Avaria sims, in Grendel's Children! ^^
Olympia Rebus
Muse of Chaos
Join date: 22 Feb 2004
Posts: 1,831
12-16-2004 13:58
From: Psyra Extraordinaire
Awwwwrr, izzn't he cuuuuuute? ^^

Thanks. Do you suppose he's a distant relative to your sea serpant? ;)
_____________________
Aestival Cohen
half pint half drunk up
Join date: 2 Sep 2004
Posts: 311
12-16-2004 14:01
From: Olympia Rebus
...at first I was dissapointed that we only had "building blocks" to make stuff.


Hee, I know! At first I couldn't figure out how other folks had OBVIOUSLY brought complicated models into SL and why I was limited to just boxes and balls! (^^);;
_____________________
=^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^=
Luverly FLICKR photos!
=^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^= =^.^=
Psyra Extraordinaire
Corra Nacunda Chieftain
Join date: 24 Jul 2004
Posts: 1,533
12-16-2004 14:01
From: Olympia Rebus
Thanks. Do you suppose he's a distant relative to your sea serpant? ;)


It's entirely possible. :>
_____________________
E-Mail Psyra at psyralbakor_at_yahoo_dot_com, Visit my Webpage at www.psyra.ca :)

Visit me in-world at the Avaria sims, in Grendel's Children! ^^
Eep Quirk
Absolutely Relative
Join date: 15 Dec 2004
Posts: 1,211
12-16-2004 14:34
From: NumTee Flytrap

Its fairly obvious that although polygonal meshes are far far better for our computers graphics cards they are so much bigger in terms of file size. For a primitive the client all ready knows almost everything about it, then just applies all the little changes someone has made to that basic template. Data for custom polygonal meshes is arranged by specifying the relative location of every single vertex that makes up that model - there is no simple template, just loads of points arranged in a particular order. This is blatantly going to result in a much much higher file size.


Not necessarily, especially with compression. Most of my Active Worlds (another online 3D chat/build program) RenderWare script (RWX) models are 1K uncompressed--and that's as TEXT files; binary versions would be even smaller.

From: NumTee Flytrap

I must admit that personally I prefer polygon modelling, but the whole content delivery system of Second Life just could not handle it . These days I think bandwidth limits a game's scope a LOT more than graphics capabilities, so optimising SL for bandwidth rather than graphics considerations has to take priority.


Active Worlds allows custom objects and it handles them fine as far as transferring them from the object server to the user's cache.
Lordfly Digeridoo
Prim Orchestrator
Join date: 21 Jul 2003
Posts: 3,628
12-16-2004 19:43
From: Eep Quirk
Not necessarily, especially with compression. Most of my Active Worlds (another online 3D chat/build program) RenderWare script (RWX) models are 1K uncompressed--and that's as TEXT files; binary versions would be even smaller.



Active Worlds allows custom objects and it handles them fine as far as transferring them from the object server to the user's cache.


If i recall correctly, Activeworlds objects couldn't be modified from their original shape once they were uploaded. Therefore, to have 3m, 5m, 7m, and 10m walls, you would need 4 separate objects.

Sure, it works, if everyone wants to just use those 4 types of walls for building. Most wouldn't though, and would make their own objects (if they could; another problem there).

SL's prim creation method is easier to use for non-professionals. It is also collaborative (Activeworlds definitely wasn't); everyone has access to all the same shapes that you do.

It also saves bandwidth in the long run, honestly. 12 total objects with different textures, compared to 40 million unique objects? Guh.

LF
_____________________
----
http://www.lordfly.com/
http://www.twitter.com/lordfly
http://www.plurk.com/lordfly
Eep Quirk
Absolutely Relative
Join date: 15 Dec 2004
Posts: 1,211
12-16-2004 21:12
While AW objects don't allow in-AW scaling, they do allow rotation and translation.

AW is collaborative in that, through privileges, one can move another person's objects and 2 or more people can build together.

I'm not saying to get rid of primitives modelling, but just to allow more detailed, specific editing on the polygon/vertex level. Objects can still be based off primitives but to be able to at least remove hidden polygons/sides would help framerate immensly. And even with primitives modelling, where are the basic functions like extrusion, lofting, etc?

There's really no reason to limit modelling to primitives when most objects can be under 1K each (before compression) and still be more detailed and efficient than just as primitives only.

AW's object transfer bandwidth is quite low compared to textures and sounds (which take up FAR more bandwidth)--and AW's textures stay nice and crisp, unlike SL's blurry-til-you're-right-on-top-of-them textures.

Anyway, getting off the topic a bit; I'd just like more efficient modelling to reduce lag. I can be at 200m visibility in AW in the world I built objects for (hundreds of unique objects) and barely have any lag, whereas even at 100m in SL there can be quite extensive lag with barely any objects.
CrazyMonkey Feaver
Monkey Guy
Join date: 1 Jul 2003
Posts: 201
yesm
12-17-2004 01:16
I agree that poly modeling is way more efficient, and that if the models used an appropriate polygon density could be saved compressed with comparable sizes(in bytes). but in some cases would use more space(lots of curves). Size wise organic shapes could be bigger while non-organic shapes could be smaller and definitely more efficient.

Some issues are:
Would the physics engine(Havok and Havok2) handle it?
Would the underlying structure of the SL code base support it?
The LOD system wouldn't work for them how would that effect performance.(prolly fine)
In regards to physics engine, what about vehicles?
There's probably others too..

Another solution could be Nurbs surfaces. There descriptions are very efficient and are great for organic surfaces. has same issues as above except the best size wise for complex organic things.

But generally the existing system is good :)
Ale Bukowski
Gnomes Landscapers Master
Join date: 2 Apr 2004
Posts: 129
12-17-2004 05:19
If a feaure wich let us upload complex meshes made by other professional programs out of SL, was implemented, it would be really a shame: you would have to deal with a bunch of "builders" and their 4000+ prims perfect objects made with "area 51" technologies. To not talk about wild uploads of excellent already existent models in all the internet. This would totally screw the sense of SL, imo.
I have to agree that the system now is good, I like it, cause you can create almost anything; with some difficulties, ok, but this only requires you to find creative solutions. ;)
Artillo Fredericks
Friendly Orange Demon
Join date: 1 Jun 2004
Posts: 1,327
12-17-2004 06:32
The biggest 3D model (AutoCAD Mechanical Desktop 2.0 no less) I ever worked with was around 52 megs and that alone was enough to bring my computer to it's knees, let alone the 5-10 minutes it usually took to render! LOL

Well then again I was running that model on a 400mhz machine with 512 RAM and a 32 meg graphics card about 3 years ago, but STILL! I wouldn't want to subject my friends to such a model until the hardware was able to deliver and render such models fast enough for us to not even notice :: cries SNOW CRASH! ::

As Loki said before: "SL is still pretty young too, no telling what the future holds."

I can be patient until then and just use the hell out of the prim-tools! I do really miss extrusions/revolutions/lofts, slicing, and boolean operations though, because I find that I use them more than any other 3D commands (at least in the CAD world, and I'm sure it's not much different in the 3D modeling world either). I'd like to see support eventually for spline-based/NURGS models, too. not just polygon models. And clothing plug-ins. and FX plug-ins. etc etc etc. But again, I think eventually all this will happen somehow... just gotta be patient!

AFAIC, Second Life is leaps and bounds beyond any realtime multiuser VR program I have encountered before... I always like to say it's "Activeworlds done right", but of course it's still a baby and it can only get better with age! WOOO Keep it going Linden Labs!!!

Peace and Happy Building,

Artillo

:: waves at Eep :: Hey I didn't know u were in here too! I'm an old AW'er myself! :D
Nexxus City GZ - AW 285s 5000w
_____________________
"I, for one, am thouroughly entertained by the mass freakout." - Nephilaine Protagonist

--== www.artillodesign.com ==--
Kensuke Leviathan
Wandering fox
Join date: 11 Dec 2002
Posts: 127
12-17-2004 07:03
I had a chance to poke my head into AW today and well there's a good reason that method works there, things are set up and seperate...very seperate servers, unlike SL which is a completely constant and fluid world. Now I myself would love to see an external model importantion deal but I don't think it's going to happen there are a lot of things that make SL work the way it does that would make importing a 100 poly file lag like you wouldn't believe, I.E. the SL prim last I checked was controled by 3 variables(I'm guessing this has changed but still)where as with a 100 poly model you'd have...100 variables for vert position not to menthod other things like scaling. People have been asking for the feature for over two years now, well thats when I started asking at least, and they still haven't decide to completlely scrap the way things work in SL in favor of those builders out there lucky enough to own a PROFESSIONAL package like maya.
_____________________
_________________

":> wark wark"
nonnux white
NN Dez!gns
Join date: 8 Oct 2004
Posts: 90
nerbs
12-17-2004 11:37
i think u all forgot that there's other forms of 3d modeling...

and if we got bolean objects? u can add, subtract. this is a smart way of combining simple prims. and mor posibility keeping the 1bit information... bah, or u need another one for the bolean?

and now... nerbs? u know nerbs? why not a nerbs like system? hour skeleton is a nerb system... and smaller the the hex bit needed for a prim
Artillo Fredericks
Friendly Orange Demon
Join date: 1 Jun 2004
Posts: 1,327
12-17-2004 12:37
nonnux didn't read my post LOL

NURBS-based modeling (it's an abbreviation for Non-Uniform Rational B-Spline - a mathematical representation for smooth curves and surfaces) isn't the same thing as Kinematic Skeletal Systems like in 3D Studio Max, it's a way of curve-fitting a surface to an overall shape, or sometimes referred to as "skinning". :D


Booleans R FUN!!!!! :D

Arti
_____________________
"I, for one, am thouroughly entertained by the mass freakout." - Nephilaine Protagonist

--== www.artillodesign.com ==--
Synergy Belvedere
Prim Reaper
Join date: 7 Jul 2004
Posts: 253
12-17-2004 13:22
Since I've been using programs like 3DS, Lightwave, C4D, and Rhino for a few years thought I'd jump in here to....

My first forray into building in SL left me VERY FRUSTRATED so I understand Eep's annoyance, but I also remember going from Nurbs modeling to Polygon modeling and being VERY FRUSTRATED at first too. Sure I miss booleans, sweeps, cuts, and individual point control, but it's all what you make of it really. I can honestly say I'm building things now that I never would've thought possible when I first started and enjoy the heck out of it at the same time.

As far as Eeep's idea of joining, for example, the polygon faces from 2 butted up cubes, remember that then SL would have to then keep track of on/off parameters for *each* face of every prim you could join. As well it would have to track join parameters (e.g. what's the ID of the prim that face X is joined to) for each and every prim in game. Instead of saving your self stream time by joining poly's you've now multiplied the data to download quite a bit!

I think the system works fine, let's work on gettin them to let us upload bump maps for our textures ;)

-Syn
Eep Quirk
Absolutely Relative
Join date: 15 Dec 2004
Posts: 1,211
12-17-2004 14:28
As far as "100 variables for vert position" et al, no. 3D models, primitives or not, have to have each vertex rendered regardless so Kensuke's point is moot; as is the fact that AW's worlds being separate make more complex modelled objects correct method--it just doesn't matter since objects (primitives--of which AW has, incidentally--or more complex objects) are still transferred from a remote server to the user's local computer regardless. And there's no way each SL primitive only has 3 variables since there are more than 3 things that can be done with each primitive (dimensions, texture--per face, rotation, scaling, translation, cutting, skewing, physics enabled, etc, etc).

However, Synergy's point about join parameters is probably correct, but I'd rather have to wait a few seconds (if that) longer to get an object than to experience minutes/hours of lag because of unnecessarily complex objects with covered polys all over the place.
Kensuke Leviathan
Wandering fox
Join date: 11 Dec 2002
Posts: 127
12-17-2004 17:31
Your missing the point, I know how 3d data is stored and displayed, but thats not how SL handles 3d data, they would have to convert the uploaded meshes to a similar system and lag would run rampent aside from the introduction of thousands of unquie UV mapping systems. and it wasn't per vert position it was per object. They used to be 3 variable for the cube obviously there are more now and I'm terribly sorry for my mistake, look back into the fourms young one. Booleans on the other hand, thats a whole nother can of worms, once agian, read back should they still be in the back files and you'll see more disscussion on this then almost any other topic in SL :P

PS-sorry thought of this in the shower, the other problem is bandwidth, the average model for UT2k4 is roughly 5ish megs, now having to download 30 of those at once..on screen not to mention if you let people do it with objects, :P letting random guy +1 upload 7000 polygon clothes pin is not the greatest of ideas.
_____________________
_________________

":> wark wark"
Eep Quirk
Absolutely Relative
Join date: 15 Dec 2004
Posts: 1,211
12-18-2004 00:19
Lag wouldn't "run rampant" because it doesn't "run rampant" in Active Worlds. 3D rendering is 3D rendering. I can download FAR more objects in AW in less time than it takes to download about the same amount of objects in SL. Go figure...

~5MB for a UT2K4 model? I don't think so. Perhaps you're including (incorrectly, all the animations, textures, etc--not the model itself). Even very complex objects (10s of thousands of polygons) won't be more than 1MB at MOST (very extreme and rare). Regardless, most models won't be that complex (or need to be, really). When people start noticing their computers grinding to a halt, they'll get a clue that they need to learn to model better, otherwise people won't want to visit their areas.
1 2 3