Forum Moderators: Staff
Poser Technical F.A.Q (Last Updated: 2024 Nov 13 12:50 am)
Welcome to the Poser Technical Forum.
Where computer nerds can Pull out their slide rules and not get laughed at. Pocket protectors are not required. ;-)
This is the place you come to ask questions and share new ideas about using the internal file structure of Poser to push the program past it's normal limits.
New users are encouraged to read the FAQ sections here and on the Poser forum before asking questions.
If you do run out of RAM ...
Alternatively, first save out your props in smaller groups as smart props and
Use readscript directives in your base figure's cr2 to read in the pp2s during loading ...
*{
version
{
number 5.01
}
// ... insert readscript directives after version segment
readScript ":Runtime:libraries:props:myprop:propgrp_1.pp2"
readScript ":Runtime:libraries:props:myprop:propgrp_2.pp2"
readScript ":Runtime:libraries:props:myprop:propgrp_3.pp2"
// ... and so on
}*
Message edited on: 12/23/2004 07:36
Or else a simple PP loader script ...
import poser
scene = poser.Scene()
scene.LoadLibraryFigure(":Runtime:libraries:character:myfigure:figure_1.cr2")
scene.LoadLibraryProp(":Runtime:libraries:props:myprop:propgrp_1.pp2")
scene.DrawAll()
a loader module for a list of figures and props ...
basepath = ":Runtime:libraries:"
filelist = ["character:myfigure:figure_1.cr2",
"character:myfigure:figure_2.cr2",
"props:myprop:prop_1.pp2",
"props:myprop:prop_2.pp2",
]
import poser, string, sys
ptf=sys.platform
fCh = ':'
if (string.find(ptf, 'win') != -1) :
fCh = 'r'
rCh = ':'
if (string.find(ptf, 'win') != -1) :
rCh = 'r'
scene = poser.Scene()
for i in range(filelist) :
subpath = filelist [i]
iteraddress = basepath + subpath
ext = iteraddress [len(iteraddress)-4:len(iteraddress)-1]
iteraddress = string.replace(iteraddress, fCh, rCh)
if (string.lower(ext) == 'cr2') :
scene.LoadLibraryFigure(iteraddress)
if (string.lower(ext) == 'pp2') :
scene.LoadLibraryProp(iteraddress)
scene.DrawAll()
a loader module for serialised figures or props ...
baseaddress = ":Runtime:libraries:props:myprop:prop_1.pp2"
iterations = 160
import poser, string, os, sys
scene = poser.Scene()
ptf=sys.platform
fCh = ':'
if (string.find(ptf, 'win') != -1) :
fCh = 'r'
rCh = ':'
if (string.find(ptf, 'win') != -1) :
rCh = 'r'
baseaddress = string.replace(baseaddress, fCh, rCh)
(figpath, figfile) = os.path.split(baseaddress)
ext = figfile[:len(figfile)-4:len(figfile)-1]
for i in range(iterations):
iteraddress = figpath + figfile[:len(figfile)-2] + str(i+1) + figfile[len(figfile)-5:len(figfile)-1]
if (string.lower(ext) == 'cr2') :
scene.LoadLibraryFigure(iteraddress)
if (string.lower(ext) == 'pp2') :
scene.LoadLibraryProp(iteraddress)
scene.DrawAll()
... sorry, scripts are untested
Perhaps you are using P4, or for some reason the Python scripts don't work. I that case, this is how I would do it. Load the target figure into Poser. Zero all translations and rotations of the hip and Body. Zero the figure in the Joint Editor. Position the props in the desired location relitive to the figure. Save the props using Select Subset'. Note that you can't save as a smartprop when using select subset, you will have to add that manually in a text editor. Open the pp2 you created in a text editor. Do a case sensitive 'Search & Replace' of all instances of 'parent' with 'smartparent'. At the moment the smartparent for all props will be 'UNIVERSE', so you will have to do another search for 'smartparent' and type in the names of the actors that the props should be smartparented to.
[bookmark]
Verbosity: Profusely promulgating Graham's number epics of complete and utter verbiage by the metric monkey barrel.
This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.
hiya all I (dimly) remember something about multi loading props with a matpose file.. I've got about 50 small props to load in on a figure, (2 groups of 25 for example).. I want to be able to load them in as the 2 groups. how would one do this? (I want to avoid loading them 1 by 1 you see on the finished figure - they have to be props, there's no other way to get the effect I'm working towards) thanks!