Simply Maya User Community

Simply Maya User Community (https://simplymaya.com/forum/index.php)
-   Maya Basics & Newbie Lounge (https://simplymaya.com/forum/forumdisplay.php?f=31)
-   -   Maya=nodes, 3DsMax=?? (https://simplymaya.com/forum/showthread.php?t=8136)

nspiratn 27-09-2003 08:07 AM

Maya=nodes, 3DsMax=??
 
Was just wondering if anyone knows what the basic architecture of 3DStudio Max is like? You know, like Maya is built on nodes(dependency graph etc), how does 3D Studio Max work?

Just curious since Maya keeps saying its flexible etc , which is good, but just wanna compare it with 3D studio max.

Looked for websites/books on that topic , but havent found it yet.

thanks.

dannyngan 27-09-2003 08:36 AM

3ds max has a similar internal structure referred to as the Scene Graph. As of Max 6, the new Schematic View functions much like Maya's Graph Editor. I still have to play with it some more to see how similar/different it is, but, upon initial inspection, they're pretty close now.

nspiratn 27-09-2003 07:51 PM

Where did you read about the Scene Graph? A book? A website?
I want to read about it in detail, so if you can tell me, it would be really great.


Thanks.

dannyngan 29-09-2003 04:40 AM

Not sure where you can read about it just yet. Max6 will be released on October 15. I'm sure there will be more info then.

nspiratn 29-09-2003 05:03 AM

Well, I've busted my brains for the past few days and have finally come up with this. In case anybody is interested. PHEW!

1) the core of 3dsmax is HOOPS device interface (HDI).It is a commercial-grade graphics system providing the algorithms and data-structures necessary to incorporate 2D and 3D, vector and raster graphics into interactive CAD/CAM/CAE,Scientific Visualization, GIS, and many other types of engineering applications.

2) The geometric objects provided by 3ds max are parametric objects. They are defined by their user interface parameters(Radius, Segments count, Hemisphere setting, etc), rather than directly by the vertices and faces which make up a mesh surface. These parameters are stored into memory when 3dsmax saves the object. Modifiers manipulate these objects. Every modification is saved in a Modifier Stack which the user can come back to at any time and change any parameters required.

3) Now comes the interesting part. When a user runs 3dsMax, they're essentially using 'Plug-ins'. In 3ds Max, Functionality is implemented using plug-in classes which are object oriented. Plugins are programmed using MaxScript, which is very much like C++. All plug-in classes have one Base class that they use to communicate with 3dsMax itself. Plug-ins communicate with each other using the 'Reference Architecture" in 3DsMax as follows :

Say Plugin A depends on Plugin B. If plugin B changes, it notifies A(and any other plugins that might depend on it)of that change. Also, Plugin A in turn notifies that it has received a change notification.
The ability to make plug-ins independent OR work with each other is what makes 3dsMAx's architecture powerful.

4) In a 3dsMax scene, every Object is associated with a Node. This node manages information like transform controller, the material used, data about parent-child hierarchies, and grouping information which allow the object
to exist in the scene.

5) The Geometric pipeline is the system used by 3ds max that allows a node in the scene to be altered, through the application of modifiers.At the beginning of a pipeline is the Base Object. At the end of a pipeline is the world space state of the object. This world space state is what appears in the 3D viewports and is rendered.For the system to evaluate the state of the object at the end of the pipeline, it must apply each modification along the way, from beginning to end. This process can be very slow.

6) Performance :
To maximize the speed that the system can evaluate the state of a node, the system maintains a World space Cache and Validity Interval for each node in the scene. Whenever a node needs to perform an operation, the system checks the validity interval at that time to see if the cache is valid. If it is, the operation is performed using the cached representation. If it is not, the pipeline is evaluated and the cache is made valid at that time. The validity
interval is also updated to reflect the new cache. The operation is then performed.
As an additional mechanism to speed up processing, a pipeline is broken up into Channels. There are separate channels for geometry (vertices), topology (face or polygon structures), texture vertices (UV coordinates), sub-object selection, level of selection, and display control. This enhances the cache system of 3ds max.Instead of just caching one global state for the object, it can cache separate portions of it based on the channels.


All times are GMT. The time now is 08:44 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Simply Maya 2018