• Forum
  • Education
  • 3D Software
  • Maya
  • area / volume preserve
  • Coolthreads cool cool
    Adversitment
    + Reply to Thread
    Results 1 to 5 of 5

    1. peengoh's Avatar

      Mexico

      DF

      Autodesk Maya

      peengoh is on a distinguished road

      Join Date:

      Jun 2004

      Age:

      34

      Posts:

      560

      Rep Power:

      10

      January 26, 2011

      # 1
      Hi, all. just today a student came to ask for a constant-volume deformer, and I couldn't give him an answer. He doesn't need anything fancy, I have been trying to find a deformer or an expression to help him.

      any help would be appreciated.

      Signature:

      Leve que la vida es breve.

    2. eddgarpv's Avatar

      Mexico

      DF

      Autodesk Maya

      eddgarpv is on a distinguished road

      Join Date:

      Oct 2002

      Posts:

      685

      Rep Power:

      12

      January 26, 2011

      # 2
      The first thing that comes to my mind would be use ncloth and pressure. Or is it volume as in fluids and constant as in linear?

    3. Doc's Avatar

      Mexico

      Mexico D.F.

      Autodesk Maya

      Doc is on a distinguished road

      Join Date:

      Dec 2001

      Age:

      38

      Posts:

      385

      Rep Power:

      13

      January 26, 2011

      # 3
      Volume preservation
      Nathan did this in Blender for the rabbit in Big Buck Bunny
      http://www.bigbuckbunny.org/index.ph...-rigging-demo/

      You can download the production files to find out how he did it so you can adapt it to your software
      http://www.bigbuckbunny.org/index.php/download/

      Another way to simulate this is by using a muscle system.

    4. negativecitizen's Avatar

      Mexico

      mexico city

      ZBrush

      negativecitizen is on a distinguished road

      Join Date:

      May 2002

      Posts:

      696

      Rep Power:

      12

      January 27, 2011

      # 4
      por si alguin quiere echarle un ojo este es una copia del mencionado script(una especie de huesos musculares) en python:


      #BPYCONSTRAINT
      '''
      Forces a bone to preserve volume by automatically
      scaling it along the x and z axis'.

      A minimum and maximum bone width can be
      defined in constraint settings.
      '''

      import Blender
      from Blender import Draw
      from Blender import Mathutils
      import math



      def doConstraint(obmatrix, targetmatrix, idprop):
      # Get the user setting.
      if not idprop.has_key('minscale'): idprop['minscale'] = 0.01
      if not idprop.has_key('maxscale'): idprop['maxscale'] = 100.0

      # Separate out the tranformation components for easy access.
      obloc = obmatrix.translationPart() # Translation
      obrot = obmatrix.toEuler() # Rotation
      obsca = obmatrix.scalePart() # Scale


      # Preserve volume!
      if obsca.y != 0:
      scale = min( max( 1 / math.fabs( obsca.y ), idprop['minscale'] ), idprop['maxscale'] )
      obsca.x = obsca.z = scale


      # Convert back into a matrix for loc, scale, rotation,
      mtxloc = Mathutils.TranslationMatrix( obloc )
      mtxrot = obrot.toMatrix().resize4x4()
      mtxsca = Mathutils.Matrix([obsca[0],0,0,0], [0,obsca[1],0,0], [0,0,obsca[2],0], [0,0,0,1])

      # Recombine the separate elements into a transform matrix.
      outputmatrix = mtxsca * mtxrot * mtxloc

      # Return the new matrix.
      return outputmatrix





      def getSettings(idprop):
      if not idprop.has_key('minscale'): idprop['minscale'] = 0.01
      if not idprop.has_key('maxscale'): idprop['maxscale'] = 100.0

      # create temporary vars for interface
      minscl = Draw.Create(idprop['minscale'])
      maxscl = Draw.Create(idprop['maxscale'])


      # define and draw pupblock
      block = []
      block.append(("Minimum Scale", minscl, 0.001, 10000.0, "The minimum width scale."))
      block.append(("Maximum Scale", maxscl, 0.001, 10000.0, "The maximum width scale."))

      retval = Draw.PupBlock("Volume Preserve Constraint", block)

      # update id-property values after user changes settings
      if (retval):
      idprop['minscale']= minscl.val
      idprop['maxscale']= maxscl.val

      Signature:

      CARLOS PUEBLA PALOMO // NEGATIVE CITIZEN

    5. January 31, 2011

      # 5
      Wow, Thanks a lot, Im going to take a look and will let you know the results...

      Signature:

      Leve que la vida es breve.

    Similar Threads

    1. Art of Rigging, Volume 1
      By HOCATKA in forum Maya
      Replies: 0
      Last Post: 05-15-06, 10:17 PM
    2. AREA SHADOWS TUTORIAL
      By PeLoN in forum 3ds Max
      Replies: 3
      Last Post: 12-18-03, 07:55 AM

    Tags for this Thread

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    Adversitment