View Full Version : Animation of a bullet punching through a glass plane
Aldaryn 07-02-2003, 09:12 PM Hi!
I think you all know these "extreme slow motion" movie clips, shot at high frame capture rates, like filming an explosion for scientific examination of small details, or making a film of a bullet breaking a glass plane apart.
Recently I watched a short old film about the usage of ballistics in crimefight, and the importance of bullet impacts and trajectories. So I thought it would be nice to do an animation similar I saw in that short film (with the oldie look, of course... :) )
The problem I can't do abesolutely nothing about it is the animation of the glass:
I need a thin glass plane breaking slowly apart. I've tried several approaches, and still there is always something wrong.
Right now, I'm experimenting with the reactor fracture feature to simulate the glass falling apart. I've modelled the glass (The same spider web like fracture I saw in the movie) shards, and runned the reactor simulation, and it worked really good, the animation of the glass was fine, and I dare to say: realistic.
But a big problem still remains:
At the begining of the the movie, the glass is still in one piece, but the faces of the shard's sides inside of the glass are cleary visible due to the glass shader. And this gives away the whole image.
I can modell a single frame of the animation by welding vertexes, and deleting obsolete polygons, but I want to do an anim.
If you have any idea on creating such anim please help, continuing the mentioned method, or a totally different one - matters just little... so:
Any idea of breaking glass is welcome!
- Aldaryn
|
|
If i understand your problem you have to create two glasses at the same position (one is solid and one is broken). The first is visible before the collision of the bullet with the glass and the second glass is visible after collision.
Invader Zim
07-02-2003, 10:08 PM
Why don't you do a swap.
Using the visibility track for your animation. Place 2 glasses, one intact and the one that explodes. Hide the cracked one until the impact hits then swap it revealing the exploding one. if done at the right frame, it should look seemless.
Good luck :)
Aldaryn
07-03-2003, 05:07 AM
Thanks, howevet, it seems to be more complicated than this:
You see, thanks to this extreme hight framerate (800fps) you can clearly see the glass breking apart. It's just not in one frame transition (like it would be at 25,9fps).
You can see how the crack on the glass runs quickly towards the edges leaving the "spider web look" behind...
I've tried to experiment with this. (The visibility control) but the only way I could solve it to create 400 planes in different states of animation (about 200th frame it is compleatly broken, and falls apart to approx. 1600th)
But still this method is good to create a quick break.
Hmm...i think that visibility is the only way, but you can create more than 2 copies of glass...5 or 10 for example...smth like animation...
Massemannen
07-03-2003, 08:00 AM
Canīt you do an animated boolean operation?? :wavey:
gaggle
07-03-2003, 08:34 AM
Here's a random untested thought: **** doing it the right way, instead fake it by rendering the "spiderweb" to a texture, pull it into some post-processing program, and make an animated texture that has the spiderweb growning. You can use a couple of animated masks to have it appear to grow.
Then apply that to your sheet of glass, using it as a guidiancemap for refractions, or bump, or whatever will be sufficient to give the impression that it's the glass cracking.
Does the spiderweb grow and then the glass falls apart, or does glass fragments appear whilest the spiderweb is growning? If you can get away with keeping things seperate, then you should hopefully be able to just swap using the visibility track.. hm, still might be possible if you have to grow the spiderweb and shatter the glass at the same time, with multiple glass-objects you swap in and out. Ie. you define "zones", if you will, on the original piece of glass, and at the appropriate time you swap it with a piece of the fragmentation-glass.
Maybe doable?
AndersEgleus
07-03-2003, 11:47 AM
Here's another (untested one):
First render the whole thing twice - once with the glass intact, and once with the glass breaking. Make sure the bullet is visible in both renderings.
Next, let the fragmented version and the bullet be visible and hide the intact version. Now let's make some (not so) groovy materials.
Material 1: I think the metal shader is the fastest to render so use that, and make a black material with 100% opacity, no specularity and 100% self illumination. Apply this material to the bullet.
Material 2: Also the metal shader with 100% opacity, no specularity and 100% selfIllum.
In the diffuse slot, put a falloff map. Swap the colours so the first is white and the second is black and set Falloff type to Perpendicular / Parallell.
If your glass object's local axes are aligned with the World axes (preferred), set Fallof Direction to whichever World axis is perpendicular to the plane (e.g. if the window was created in the front viewport (XY), the World Z Axis is perpendicular to the glass plane).
If the window axes aren't aligned with the world, you'll have to create a dummy and align it by position and rotation (use center!) to the window and then move the dummy using its local axis as far away as possible from the window in the direction perpendicular to the plane. In this case, set Fallof Direction to Object and use the dummy as the object.
In the mix curve of the falloff map, create a new point and make all three points corner interpolated. Move the newly created point to the very beginning and top of the mix curve so that the curve looks like an "L" rotated 90 degs clockwise.
Apply Material 2 to all the glass shards.
Now, what should happen, is that every shard will stay white until it is rotated only slightly from its original position, which should occur when it cracks and breaks off from the rest of the glass plane. So in short, during the animation, the intact glass is white while the shards that break off, the bullet and the background become black.
If you see thin black lines between the shards even when they are "still" when you render, you could apply a push modifier to all of them with a very low push value, just enough to make them overlap only slightly.
Now render the animation against a black background (you don't have to use alpha in any of the renderings, especially this black and white one, since it will only be used as a matte for the intact rendering).
In After Effects (if you have it, otherwise I'm sure you can do it in video post), put the breaking rendering first in the composite.
On top of that, layer the intact rendering and use the black and white rendering as a matte, either by using the Set Matte effect, or by layering it invisible on top of the breaking rendering and using the TrkMat (track matte) controlls next to the layer set to 'Luma Matte "Name Of Black/White Rendering"'.
Your timeline in AE should look like this:
*<oU |____Source Name______________Mode__T TrkMat
______> 1 Mat___ B/W Matte render____normal__________----------------
*_____> 2 Intact render_______________normal___luma___----------------
*_____> 3 Cracked render_____________normal__________----------------
Well, did it work? Are you still awake?
Aldaryn
07-03-2003, 07:42 PM
gaggle : I've tried this one. (Oh, I sould have written it down... sorry. :) ) But the web and cracking interaction is a bit complicated...
As the crack runs along, pieces start to fall out from the center in bit random way... But still this could be a possible solution, however, I feel like the lack of skill in me to do a texture map this complicated....
Aldaryn
07-03-2003, 08:04 PM
Anders Egleus : Hey, thanks for the really detailed description.
It's untested, but it works, or as far it worked for me!
When I started this project, I tried to think up the most easiest way to do this, and I also thinked a lot about post compositing of two clips, but I've put this idea really deep away, because I wanted to do it fully in one render process for the animation to be seamless...
But now, I can clearly see, this might be the only way for me with my extreme basic skills to do it.... :))
And your process seems to be the right way to do it as a compositing job...
Thanks guys for the helping hand in this!
AndersEgleus
07-04-2003, 06:09 AM
Glad I could help.
CGTalk Moderation
01-15-2006, 01:00 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
vBulletin v3.0.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.