ZBrushCentral

ZCamera Plugin (Update: Fixed Urgent Bug)

Update: Demo version of Camera system added (no morph-target animation yet). is fully functional except for Save and Load functions and maybe some bugs that you will find.
Interface example:

[![ZCameraInterface.jpg|1021x768](upload://hpVuUaK0zvwfGW01NRaL0boWaAX.jpeg)] Download the attached ZCamera Demo file for use

And here’s a quick example result:

http://www.youtube.com/watch?v=RobvJwTnqb8

Hi all! Thought I would let you guys know! If you remember a year ago I had developed a ZScript called ZCamera. It was very limited however, with only a start point and destination point for the camera, and where only one layer could be animated at a time. It was in a sort of "Alpha" stage at that point. Later after that, great Zscripter Marcus Civus came out with a great Plugin called TurnTable Plus :cool: which surpassed ZCamera so I thought I would scrap my initial ZCamera plugin and not develop it further because it had been done officially and done more well! However, it's been a year since then and I'd like to announce a new version of ZCamera which I am developing based on the suggestions of some of the members here on ZBC, great suggestions which I haven't forgotten since last year and which kept me quite busy. Animation in Zbrush has always been a very interesting concept. My goal was to create an ideal camera and animation system which included a time line and to make it Keyframe based. As much as i thought about it and tried in the past, I was never able to achieve this last year, it was too hard with all the limitations of ZScripting and the such. But good news is that recently I had finally found a solution! This new version of ZCamera is no longer static with only 2 camera points and one layer animation. It is now dynamic, versatile and interactive. Here I'll just highlight the main features: TimeLine: With this time-line slider, all morph-target animations and cameras are now KeyFrame-Based. Which means one thing. You can have as many cameras and morphtarget keys as there are frames in the time slider! Set and Delete Keys: You can now set (or delete) keys for certain frames for cameras and morph-target layers on your tool. When you do so, all the inbetweens are automatically calculated. Moreover, for morphTargets, your layers act as keyframes, and you just have to set where on the timeline they will be keyed to be played one after another.

Select KeyFrames: You can scroll through keyframe slider and use the Next Key and Previous Key buttons to jump between certain keyframes on timeline.

Preview Mode: This is an Interactive feedback mode where you can move frames along the time slider and the camera and tool animation will update instantly on screen. You can also preview the scene in real time before rendering. (Note, previewing camera movements alone is very fast in realtime even when you apply high fps, but animation in real time is slower depending on number of layer keyframes and tool resolution). Adjust settings such as frames per second Save and Load: This part is still in development, it will allow you to save out all your camera and morphtarget keys so that you can load them later to any tool. (For instance you can save out complete camera animation and then load that in for another tool, hence rendering your cameras reusable!) Render Scene: Set a start frame and an end frame and the scene will be rendered with the applied settings , cameras along with animation simultaneously giving a final result. So far the camera system is very smooth, and overall it's memory efficient but unfortunately the animation part does not support multiple subtools and can be heavy on RAM if your tool is very high res or if you have many 3D layers since you can have countless layers as keyframes and they will animate one after the other when played. In any case, sorry if I am saying all this before even releasing the plugin here on this site, it's just I'd like to let you guys know that I haven't scrapped this like most who knew it may have thought! And I guess I'm just a tad bit excited and I've been working on this a while and felt that I really wanted to say a word or 2 to someone at least lol cause no one else even knows what I've been doing with this. Anyways, hopefully I will release the first version within the week! Stay tuned... Here in the meantime is a demo or alpha version if you will of the Camera features only, no animation in this one since that needs bit more development. 1: Load the ZCamera Zscript 2: Load Your tool. With tool selected, press on the: Prepare Tool For Camera Button. Press this button ONLY ONCE if you modeled the tool normally to optimize camera rotations around y-axis otherwise you may get strange results at certain points. 3. Use the Set Camera Key button to set keys for camera at certain frames which you select using TimeLine. By doing so you key the current view in the canvas. When you set more than one key, all the inbetweens are automatically calculated, so be careful and set more keys for accurate and controlled results otherwise camera will always take shortest path. You can add as many keys as you want. 4. With a keyframe selected, press Delete Camera Key to delete a keyframed camera view and by doing so recalculating camera path based on all other keys. Select KeyFrames: You can scroll through keyframe slider and use the Next Key and Previous Key buttons to quickly jump between certain keyframes on the timeline. (Alternateive Use: Multiple Camera views can also be saved in this way) 6.Toggle the Preview Camera Button to gain real-time feedback as you move frames along the Time-Line slider, and so that you can use the preview button. 7. To preview the scene in realtime starting from the selected frame, press the Preview button. Make sure Preview Camera is toggled. 8. Render Options: Adjust settings such as frames per second and Render start and Render end frame to specify which frame the scene should begin rendering from and where it should end. 9: Press the Render button to render out scene into a movie. If you toggle the Best Render button, then each frame will be rendered with best render settings before snapshot. I hope you like it. PS I know interface is still messy but will fix for later more official release, this is still WIP. Also code isnt organized yet. Also tell me if you find bugs please. And I'm open to all suggestions, again remember that this work is based on many suggestions. Again, this is just the demo without the animation part! But that should be coming soon! Cheers!

Small Fix: On the first frame there seems to have been an automatically keyed camera on a view far away from tool so I removed this key so should be fine now.

It\s sounds super… really missing animation in zbrush 3.1!!!, because it is easy to rig a character within z/sphere for deformation .

But wating for the new release feature note on siggraph 2008 mayby there will also be animation feature i the new version…:smiley: and a SDK release… for z/script

Hey Skale, thanks!

Yea I can’t wait! They really have gotta add animation lol!

this looks interesting, Darukin…I’ll be lurking along with your progress. :wink:

your timing is impeccable, because I’m beginning my final semester of school in a couple weeks… and my graduating project will make use of a lot of very short animation clips straight out of zbrush… if this works, it will be extremely valuable to me

Nice, always good to see what people come up with. :+1:

Hi guys, thanks :smiley: , try it out and tell me what you think, and ask questions if you can’t figure something out. Also please report any bugs and what you pressed or were doing to cause it.

I’ll hopefully have a video tut soon also example result tuts etc. In meantime I promise this works if you use it right.

Also make sure to toggle Preview Camera button if you want to be able to preview in real time your results.

And remember this is just Alpha version! Need your feedback. Lots of small things for me to adjust still.

Also if you tried it and it works (or did not) please let me know Thanks :smiley:

Oh, and hey Wailing Monkey! I remember that nice thank you video you made for me using my very first ZCamera version with only 2 camera targets lol! thx for that!

:+1: :+1:

i tried this and it seemed pretty cool but right away i wanted a way to stop the preview once it went after a certain length, however it had to play through, over and over. maybe there’s a way to add this in the future.

Hi spaceboy!

Yes there is a way to cancel the preview and even rendering operation! Just press the Escape key. Maybe I’ll add a Stop button to make it less ambiguous.

By the way please be sure to download the script again if you haven’t recently, it has a big fix in a major camera rotation bug.

Please report if there’s any other ambiguities, bugs, or misbehavior in the Zscript. Also I’m open to fresh suggestions!

Thanks for trying! :smiley:

Something to think about:

http://minyos.its.rmit.edu.au/~rpyjp/a_notes/anim_principles.html

QUOTE FROM ABOVE LINK

1. SQUASH AND STRETCH

This action gives the illusion of weight and volume to a character as it moves. Also squash and stretch is useful in animating dialogue and doing facial expressions. How extreme the use of squash and stretch is, depends on what is required in animating the scene. Usually it’s broader in a short style of picture and subtler in a feature. It is used in all forms of character animation from a bouncing ball to the body weight of a person walking. This is the most important element you will be required to master and will be used often

Would this be possible through zbrush 3.1 - maybe >subtools and using deformation > gravity and scaling?

it works very well, but has just begun to try it, can not undo the animation, it could be great with a reset button. to reset the keyframes, … or mayby i missing somethings, but cool… :smiley:

Hi and thanks Spaceman definitely shud look into that stuff, but I think it might be tough with ZScript limits :confused: and the animator will have to be smart in setting the keyframes etc it’s the farthest I’ve gone.

Don’t forget however that this is just a demo for the camera alone and that it’s just the beginning with a lot of features coming in my next uploads. I haven’t even uploaded animation yet but I’m promising a nice Zsphere animation script to overcome the morph layer issues for more realistic bones movements etc. You can also animate morphs however.

And it’s not the point for me to make a perfect animation solution in Zbrush the point is only to show the huge potential that Zbrush has! And it’ll be useful to make quick facial animations in Zbrush and render them out in passes (render passes is another feature I’ll be adding hopefully i.e. base shader color occlusion masks etc which you composite externally)

There is much more to come.

And Skaale, thanks for trying! Definitely I’ll add a reset button. Also will think about doing undo commands, but in meantime check the select keyframe slider. select keyframes you wish to select with this slider (starting from 1 etc) and press delete camera key button. That should do for now. Thanks again! :smiley:

Hi again! News on the script:

I know that I’ve delayed the animation part of this plugin for much longer than I had promised but that’s because of a lot of revamping and re-architecture of the ZScript.

The new one now no longer requires a linear workflow from the user of setting tool keyposes in separate layers and getting them right first and then assigning the keys on the timeline. Instead, the user now no longer has to even look at the layers tab and all you have to do is set keyposes using the Zscript buttons and it does everything for you as you deform your model at low-res, then you can go back to high-res and deform further as you like for each keyframe.

However, that only applies for morph keys. But…!

A new feature now for this animation plugin is ZSphere rig animation! This means quite a few things. First is the ease at which you can deform your tool with the ZSphere rig and set keyframes etc. Secondly, it does not involve layers whatsoever but only Zsphere attributes are taken into account. Thirdly, ZSphere rig animation is unlike morph animation and instead gives realistic arcs in bone movement (with an algorithm) maintaining bone length! ZSphere rigs and animation can also be saved and are reusable for other meshes if you bind them to it.

The drawbacks however are that firstly, as you all know, ZSpheres are still currently buggy in Zbrush which can lead to some frustrations while you work with them. But that’s irrelevant to the script, but is only Zbrush. Secondly, there’s a ZScript bug which means that to work with your ZSphere rig, I wrote an algorithm that temporarily decreases the size of your ZSphere rig and meshes to -16 to +16 x,y,z space so that azsphere animation is possible. Thirdly Zspheres rigs don’t have features such as twist etc meaning it’ll be tough to simulate animation such as wrist twisting unless you’re clever with your ZSphere rigs and also clever with setting up surface rigs simultaneously with bones rigs for facial animation.

However a third feature is the use of both ZSphere animation alongside morph animation meaning once you finish Zsphere animation you can save out your animation for a certain mesh and it’ll be converted to the usual 3D layer morph animation where you can work and update each keyframe with morphs and high-res deformation.

A new feature in development is the Render Passes feature. You may not want to render your animation as one simple material, so, with render passes you can render out you animation in several passes such as color, base material, Zbrush occlusion, Zbrush ZDepth, Light Passes, or whatever materials alongside masks you can come up with for external compositing such as in After FX. There are some default passes but you can also save your own passes for the active tool meaning active texture and material properties and lights setup (with masks also, not real masks but just a flat black color where you want to mask). There will also be a Render button in the script which will render all your passes into separate layers and then run ZAppLink to open external program like photoshop where you can composite those layers for a full render instead of rendering each pass manually and having to change material or texture etc each time. A big drawback however is the default Zbrush lighting in your animations which won’t be real but I’ll look into a solution.

PS when I complete the script fully I will definitely post in a new thread with presentation videos for all the features which are so far: Camera, Morph Animation and ZSphere Animation (including save and load for both), Render Passes.

Anyhow, stay tuned. And if you’re interested in a script like this at all it would be nice to let me know by leaving a comment here because I’m not sure :smiley:

so in a turnaround we could have subtle movement via zsphere anim?..I’m interested. :smiley:

Hi WailingMonkey and thanks!

Well so far you can have any animation, subtle or not, with any camera animation that you keyframe. But I haven’t coded it to work with default turntable yet but that’s an idea maybe I will add this as it’s a very practical use! For subtle animation, morph animations with transpose and sculpting would be the way to go, easy and fast. ZSphere rig animation is for larger limb arc animations etc.

This script which was originally simple 2-point camera script has developed so far into something huge so I’ve got a lot to finish ahead of me! Never knew it would grow this big but it has :smiley: I’m glad that you’re interested because the support will help keep me going more.

New feature: Transpose Master type animation for all subtools where you animate the low-res instance of all subtools polygrouped and preview it, then once complete transferring animation for all subtools.

Hopefully I will soon show videos for evidence of these features and as a presentation.

I’m actually quite suprised there isn’t more response to your post, considering
there have been requests for animation options in Zbrush for quite a few years… <shrugs>

Maybe folks are just waiting to be able to download it and see for themselves.
(or hoping Pixo will release more info on what’s in store for 3.5 in the animation
dept.)

Anyhow, keep going as you see fit (for your own growth and sense of accomplishment)
… don’t worry about whether the masses have scheduled the parade in your honor yet. :lol: :wink:

hey,

When will the post on the -CAMERA and animation plug-ins be postet–is it working? or is it still in alfa-stage??..iam very excitet…can wait… :smiley: :smiley:
skaale

Hey Skaale! Im glad you’re interested but unfortunately it’s in alpha stage.

You should understand that this is quite an ambitious project and needs some time and I’ve been quite busy lately with other important matters but be assured I will get back to it as soon as I can and it’s still underway. Main problems is not the core features anymore but other small important things here and there and bugs etc for example coding the smooth transition from one keyframe to the next rather then twitching at point of keyframe in preview mode etc and other problems which spring up whenever a new feature is added. But they need a lot of time in fact as I figure things out.

What I do plan to upload soon though is a video. :smiley: I will start a new thread when it gets more ready, but this thread was basically the ZCamera feature and an announcement for my other plugins.

In the meantime you saw the timeline and how it worked with camera so far. Really it’ the timeline which everything is based on and why this was ever made possible.
Stay tuned anyhow! :wink:

Just adding my own words of encouragement to this project. It sounds very promising (and ambitious)! If you really get in a jam on any ZScripting issues, I’d be happy to help if I can… although you seem to have it under control. :slight_smile:

Best of luck, Sven