Sun, Nov 10, 4:20 PM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2024 Nov 10 3:47 pm)



Subject: Stripping a *.cr2?


Tintifax ( ) posted Mon, 19 January 2004 at 3:38 AM · edited Sun, 10 November 2024 at 4:13 PM

Used a *.cr2 for a prop and that works great. As it is a static object, I don't need a lot of the default dials. To avoid these unwanted dials and to significantly reduce the size of the *.cr2, I'd like to know what dials are needed and what do they operate. Are there any tutorials or explanations on *.cr2 file format/content to help me to strip it of unneeded parts? Thanks a lot - Walter


TygerCub ( ) posted Mon, 19 January 2004 at 4:43 AM

~bm~


PhilC ( ) posted Mon, 19 January 2004 at 5:22 AM

May I ask why you are doing this?
It will be easier to then give a clearer answer.

Regards,

philc_agatha_white_on_black.jpg


Tintifax ( ) posted Mon, 19 January 2004 at 5:56 AM

I made a static prop that consists of several parts as *.cr2. There is a core part as parent and other parts that can be switched of (hidden) as children. These children should not be moveable, rotateable, scaleable,... They should only follow their parent. To lower the size of the *.cr2 and to get rid of the unwanted dials in the children I wanted to remove these channels in the *.cr2. I made some tests in between and it worked for the translate, rotate, scale and taper tiles. I do not know what can be done with the other hidden dials. Any idea?


SAMS3D ( ) posted Mon, 19 January 2004 at 5:58 AM

hmm, gotta check this out and will return...Sharen


RHaseltine ( ) posted Mon, 19 January 2004 at 6:25 AM

Why not just convert to a single object and save as a prop?


PhilC ( ) posted Mon, 19 January 2004 at 6:31 AM

OK I think I know what this is relating to now :)

Have you tried saving the combined model as a grouped prop?

  • Start by parenting child parts to the model that you want as the parent. (You've probably already done this).
  • Now open the Prop library and click on the "+" to save.
  • In the popup dialog window, FIRST type in the name you want it saved as.
  • SECOND click the subset option and select all the parts
  • Click the OK's to finish

If you select subsets then name it forgets the subsets when you click in the name box.

Now load the saved prop and it should come in with all the features you require and none of the bend/side-side/twist dials that you are currently getting in a CR2. If you need to turn any dials off then open up the (much smaller) pp2 file in an editor and set the "hidden" attribute of the unwanted dial to 1.

philc_agatha_white_on_black.jpg


PhilC ( ) posted Mon, 19 January 2004 at 6:33 AM

p.s.

With this method you will still be able to select each individual section in the Poser window and set invisible if required.

philc_agatha_white_on_black.jpg


Tintifax ( ) posted Mon, 19 January 2004 at 8:17 AM

Attached Link: http://www.renderosity.com/messages.ez?ForumID=12413&Form.ShowMessage=1618955

Well, I think I made it not clear. I made this *.cr2 file to be able to easily apply MAT's and Pose Files to easily manipulate the element. As far as I know you can't use MAT files on props. I followed SAMS3D tutorial for a poseable chest.

There will be other items later with doors, where I need the rotation dials, but this first object is completely static. You will find further information on the discussion subject on the provided link.

There are a lot of channels in a *.cr2 for all parts. To avoid confusing the customers I could simply hide all dials, but deleting decreases the *.cr2 file size significantly. Just don't know what channels like
'propagatingScaleX xScale', 'zOffsetA zOffset' or zOffsetB zTranB' are good for and if they can be removed, when they are equal zero.

I assume that 'twistX CeilArc01_twistx', 'jointY CeilArc01_jointy' and 'smoothScaleX CeilArc01_smooX' are joint parameter. Can I remove them too, when I do not intend to move the children independent of the parent?

Thanks for all your help

  • Walter


Ajax ( ) posted Mon, 19 January 2004 at 2:54 PM

It's generally a bad idea to remove those basic dials. I would suggest hiding them instead (you can do that with a text editor or with one of a number of cr2 tools such as Kattman's P-Wizard, hogwarden's P-Booost or my own EasyPose Underground). You can also set the dial limits for the rotation and translation dials and then "force the limits" (again, in a text editor or with a utility like mine) to stop them moving. I would recommend setting (and forcing) the limits as well as hiding the dials. If you just hide them, users can move things with the mouse and then have no easy way to move them back. If you don't force the limits, they won't do much since most users don't turn on limits themselves.


View Ajax's Gallery - View Ajax's Freestuff - View Ajax's Store - Send Ajax a message


PhilC ( ) posted Mon, 19 January 2004 at 3:27 PM

OK lets try this:-

  • Load the Poser box prop into a new scene.
  • With it selected go to the Hierarchy Editor and click on "create new figure".
  • Delete the box from the scene and load the newly formed figure. It will have been placed in the New Figures folder.
  • Attach your props to the box figure, either parenting to the box or each other as required.
  • Select the box (which is now a body part) and set invisible in Object/Properties.
  • Save the figure back to the library.

You will now have a single entity with a very low overhead of unwanted dials. It will be a figure that you can apply MAT poses to. You may need to search elsewhere to see exactly how to write the MAT file but I'm sure I've seen it done.

philc_agatha_white_on_black.jpg


Ajax ( ) posted Mon, 19 January 2004 at 3:36 PM

I think he wants to use VIZ poses to hide and show body parts as well, Phil. Also, he needs to be able to load multiple copies to the scene and if they're props, the poses will stop working for the second set. Having it set up as a figure really is a good approach to the problem. The dials seem to be taking on more importance than they really should though. They're very small in Poser terms. There's not much to gain by removing them. Morph dials are the only ones that really use up resources.


View Ajax's Gallery - View Ajax's Freestuff - View Ajax's Store - Send Ajax a message


PhilC ( ) posted Mon, 19 January 2004 at 3:41 PM

Yes I would tend to agree :)

philc_agatha_white_on_black.jpg


nomuse ( ) posted Mon, 19 January 2004 at 3:50 PM

I seem to recall that my first cr2 prop (a gun with working slide or something) I used the Poser4 fish as a base. I did have some problems with one of the propagating channels until I removed it, tho. I like PhilC's idea, tho...especially the implied suggestion of making a mock-up character from primitives (using the Heirarchy Editor's functions) and saving that cr2 to use as a base.


maclean ( ) posted Mon, 19 January 2004 at 4:20 PM

I just found this post after answering walter's original post in the Product Showcase. Anyway, I did address some of his questions, but here's more. I wouldn't remove unwanted channels like rotate, scale, whatever. I wopuld either hide them or set limits so they can't be accidentally used. You never know when a user will want to use them, so it's better to leave them. The file size gains are minimal compared with the hassle of putting them back into a figure. Here's what to do. (also see the other post for info on rotation order) Suppose you want your columns to rotate on the Y-axis only. In poser, select a body part and double-click the Xrot dial. In the dialog box that opens, set Min & Max limits to zero. Do this for both X and Z rot for each body part. Then open the cr2 (see my other post for the addy of John Stalling's cr2Editor). Find each body part, and open the X and Z rot channels. Change the line 'force limits 0' to 'force limits 4' Do this for each body part, both Z and Z rot channels, then resave it. Now you'll be able to rotate the column on it's Y-axis, but NOT X or Z. In addition, the tools will only affect the Y-axis. BUT..... if you double-click the Xrot dial and enter new limits, you'll be able to use rotation on them. This gives you the best of both worlds. The user can't rotate them accidentally, but CAN have the option to do it, if necessary. I have to disagree with Ajax about not deleting the jointX/smooth channels (despite my huge respect for him). They're no damn use to you. If you figure isn't human, they serve no function whatsoever. Dump them. One other thing. NEVER remove the Offset channels. They are 1000% necessary!! (Unless you're using a dunmmy body part or something). mac


maclean ( ) posted Mon, 19 January 2004 at 4:24 PM

Hhere's what an Xrot channel will look like with limits forced and set to zero.

                rotateX xrot
                        {
                        name xrot
                        initValue 0
                        hidden 0
                        forceLimits 4
                        min 0
                        max 0
                        trackingScale 1
                        keys
                                {
                                static  0
                                k  0  0
                                }
                        interpStyleLocked 0
                        }

mac


maclean ( ) posted Mon, 19 January 2004 at 4:26 PM

PS ALWAYS remove the Taper dial in every body part for non-human figures. It's not only useless, it''s downright dangerous! mac


numanoid ( ) posted Mon, 19 January 2004 at 7:55 PM

I wish one of you very clever people would write a tutorial on editing *.cr2 files. I have learnt so much from this thread. I had to copy and paste parts of it and I made my own mini tutorial, but it's not good enough to be a proper one.


Tintifax ( ) posted Wed, 21 January 2004 at 2:18 AM

Thanks for the big response. Just some additions. Why is it not good to remove unwanted dials from the *.cr2? Only because it's hard to get them in again or is there another reason? You are right Ajax, the overhead is not that big, it's true, but the dials do not make sense for the column. I thought about your idea PhilC and I will do smart props that attach to the column, later. I think the base column should be one figure. Thanks maclean, I already removed the Taper Dial. Numanoid, when I'm done, I will write a tutorial (my first one) about what I did. I think there will be a lot of people interested and I think I owe this to the community for their help. Thanks to all - Walter


SAMS3D ( ) posted Wed, 21 January 2004 at 4:20 AM

Great, I can't wait to read it. Sharen


maclean ( ) posted Wed, 21 January 2004 at 2:24 PM

One reason for not removing the dials is that even when removed, they still work. If you remove all the rotate dials, a user can still rotate with the tools. If you set limits to zero, you can ensure that nothing can be rotated by accident, which is much safer. If you don't want to see the dials in poser, just change the line 'hidden 0' to 'hidden 1' in each channel you want to hide. Although, I personally like to leave the user as many options as possible. You can never tell what someone, somewhere will want to do. mac


Tintifax ( ) posted Thu, 22 January 2004 at 4:49 AM

What I would like to know is, which one will still work? Only the rotate, translate and scale dials? Thanks for your valid information - Walter


Tintifax ( ) posted Thu, 22 January 2004 at 5:14 AM

Maclean, I wasn't successful to rotate a child with deleted rotate channels. The tools didn't help me. This was tested with Poser4. You said I can. Can you tell me how in detail? - Walter


maclean ( ) posted Thu, 22 January 2004 at 2:17 PM

walter, You're right. I just tried deleting rotate and trans channels and the tools didn't work. Strange. I always though that even after deleting the channels, the tools still worked. Oh well, I still think it's better to leave them in and set limits. but it's up to you. mac


Ajax ( ) posted Thu, 22 January 2004 at 2:53 PM

Why not remove dials? Basically it's a question of minimal interference. I try to only do as much (non-standard) hacking in a Poser file as I need to make it do what I need it to do. Additional hacking exposes the file to needless risk. You never know when some conscientious programmer is going to add a little verification routine to the next poser patch that says "if no rotation dials are found, reject the cr2 and flash an error message". You also never know when some important Poser related program is going to reject your hacks. Will a cr2 with no rotation dials work in DAZ studio? I don't know. Will BodyStudio accept one for import to Max or Maya? I don't know. What about Vue import? What's going to happen when Shade compatibility comes on line? Why take the risk if you don't really need to? I've seen Poser get very upset about some hacks that involve changing the order of those basic rotation and translation dials, so in general I don't mess with the default dials unless what I'm making won't work right otherwise. Also, like Mac, I believe in giving the user as much flexibility as possible. If an animator wants to do a movie of your columns falling down in an earthquake, they'll be cross as hell when they find they can't rotate individual parts of the column. Users often want to do things you haven't though of yourself.


View Ajax's Gallery - View Ajax's Freestuff - View Ajax's Store - Send Ajax a message


maclean ( ) posted Thu, 22 January 2004 at 3:25 PM

'Users often want to do things you haven't thought of yourself' Heh heh, ajax. That's exactly why I don't like removing dials. There's always somebody out there who's going to want to use the dials. And if they have to copy them from another cr2, they're likely to get a bit hacked off ('scuse the pun). All in all, I think it's better to leave them visible and set limits to disable them. mac


Tintifax ( ) posted Fri, 23 January 2004 at 8:26 AM

Ok, I understand your reasons. I'll put them in again... Thanks - Walter


Privacy Notice

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.