Skip to content

Posts tagged ‘3d’

Little/Big Idea: Nodal App

February 26, 2011


I’d love to build an app, which basically only manipulated data/prototyped data. Basically you would import mesh data/nulls/shapes etc (possible create base types: nulls etc) and  rig/control them through a nodal work flow. I.e Max’s script controller in encapsulated nodes.

  • Import models, objects, point cloud data – possibly create nulls etc
  • Transforming wouldn’t need specific connections (i.e a transform handle node in Houdini)
  • Parenting would be done in the viewport and possible show up in a schematic type view

MotionBuilder similarities:

  • Each object would appear as a node or cluster (point cloud etc) – inputs/outputs being position/rotation/scale/xyz
  • Local/world space could be used as input output

XSI/Houdini Similarities:

  • Nodes could be grouped/compacted into digital asset/compound like object. i.e you could build an IK/FK compound
  • Vector operations on the models etc

Operations E.g.

  • add, subtract, multiply, inverse, transpose, dot, cross, power,exp, factorial, abs,ceil,floor,mod,arcLength,tangent, binomial
  • sin,tan,cos, acos

Case Types E.g.

  • If/else/elseIf/finally/then, continue/while, try/catch/throw/break

Value Types E.g.

  • integer,float,point2,point3,point4, matrix n*n
  • custom variables
  • pi, e, etc


  • Importing data – simple xml data, open customizable
  • Animation support?
  • Skinning support?
  • UV support? Masks?
  • Reference space – At one level we want to work on the object itself, at another we want to work on its vertices/knots etc. Operators need to handle both levels of abstraction.
  • Is this just for prototyping? (i like this) – need XML to export data to be readable in a standard web browser for translating in final app max/maya etc..

Maybe I’m just describing Houdini/ICE, but this would be purely for visualizing/manipulating object relative data –  custom subsystems e.g. iksolvers, rendering, animation layers, custom constraints etc etc..

More on XSI Compounds here:

More on matrices: basics

May 30, 2009


Most object transforms in 3d software are matrices’ heres a rough breakdown of what they are.

A matrix in 3d is an axis defined by three vectors: X,Y and Z and fourth being it’s positional offset from an origin. The length of each axis from the origin defines the scale of that axis; 1.0 being 100%. The ‘identity’ matrix is an objects base transform e.g.

matrix3 [1,0,0] [0,1,0] [0,0,1] [0,0,0] – for the X, Y, Z axis’ and the positional offset from the origin.

So for instance if we wanted to scale an object by 200% along its X axis our matrix transform would look like this – matrix3 [2,0,0] [0,1,0] [0,0,1] [0,0,0]

Notice also that each axis is perpendicular to each other axis (90 degrees) – this is important is if it wasnt we would get skewing. Now each axis’ can point in any direction as long as the other two are perpendicular to it.