IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Camera motion in WoW
Dead Workers Par...
post Dec 28 2006, 12:46 AM
Post #1



Group Icon

Group: Moderators
Posts: 204
Joined: 16-December 06
From: Huntsville, AL
Member No.: 51



Let's start a new thread shall we?

First, a post from Elf regarding camera solutions:

QUOTE (Elf @ Dec 27 2006, 06:23 PM) *
Hopefully a group I'm involved with will be bringing some interesting new techniques to the WoW cinema scene as well. We're currently working on a movie that blurs the lines of machinima (at least as popularly defined on machinima.com as involving a real-time engine) and traditional CGI, should be out some time next year.

The camera problem was something we had focused on as well. If you want to get more in to the game data there are a few other solutions (though the method of using these techniques is still in development). For example, there exists a scriptable in game camera, for example the starting fly-through for each race. These cameras can actually be created and modified, but the tools to do it conveniently aren't around yet.

Leaning more towards the CGI side of things, we're actually importing some of the WoW scenes (see attached image for a square chunk of Kalimdor terrain) into a 3d package (in my case, Maya). There are still a few bugs and at the moment you have to manually place M2s (trees, lamp posts, etc.) and WMOs (buildings, basically) have to be composited from mapviewer. You can definitely use it to some interesting ends though :)

See Screenshot


I did notice that these scripted camera paths were stored in the MPQs, although I didn't see the value in them. However, that's a very interesting thought of importing camera paths into the in-game camera.

The limited camera controls in WoW are the biggest obstacle for me. To combat this, I spend endless hours rotoscoping and compositing plates over a background which I record using the map viewer. I wrote an app which extends the camera functionality in both the map viewer and the model viewer, but I'm afraid to do the same for WoW, as I might get banned.

I've imported M2 models to 3DSMax for animating and to attach non-game elements, but I never thought to import the terrain data. I assume this process is not easy?


--------------------
Eric Fullerton
DEAD WORKERS PARTY

Check out our many fine podcasts!
Go to the top of the page
 
+Quote Post
Elf
post Dec 28 2006, 01:02 AM
Post #2





Group: Members
Posts: 17
Joined: 27-December 06
Member No.: 90



It definitely requires some custom code, but depending on your level of comfort with programming it might be easier than you think :)

The terrain is basically a heightmap (similar to the concept of 2d grayscale images used in bryce, terragen, world machine, etc.) divided into tiles. That is to say, you can only have one height value at any one location. Buildings and such are done with other elements called WMOs (world map objects). Although I won't link to the file formats here (you can google them if interested) since they were removed from the mapviewer site by request of Blizzard, with a little work you can write a program to turn them into a 3d mesh. I'm guessing that since Blizzard took issue with the file format specs very specifically, but not the mapviewer or modelviewer applications themselves, they are generally ok with people creating "harmless" ways to use in game content creatively. I could be wrong though.

You can also read the alpha map/texture data which references textures ("BLP" files which can be converted to PNGs with some common tools created for Warcraft 3 and the like), and bake these down into one big texture for a square tile (the texture for the square segment in that screenshot is 4096x4096). The UV map for the texture is just a simple planar projection, downwards. You'll notice that my algorithm has a bit of a bug around the tile edges where it reads the alpha value incorrectly, and 4 pixel wide lines appear faintly. Something to fix after I get back from my vacation!
Go to the top of the page
 
+Quote Post
Dead Workers Par...
post Jan 2 2007, 06:29 PM
Post #3



Group Icon

Group: Moderators
Posts: 204
Joined: 16-December 06
From: Huntsville, AL
Member No.: 51



Very interesting. I've been thinking about this for the past few days. Also I've been using Terragen lately, which is really similar to VistPro which I've used alot in the past. I'm putting together a shot where a huge army comes charging over a hill. I've searched and searched and cannot seem to find the perfect location. So I'm building the terrain in Terragen and using image maps from WoW. I think it'll work pretty well.


--------------------
Eric Fullerton
DEAD WORKERS PARTY

Check out our many fine podcasts!
Go to the top of the page
 
+Quote Post
Elf
post Jan 3 2007, 04:12 AM
Post #4





Group: Members
Posts: 17
Joined: 27-December 06
Member No.: 90



Ah nifty :)

Yeah WoW terrain certainly has that procedurally textured look to it. In some areas they manually paint the alpha maps of the texture layers, but for the bulk of it I'm pretty sure they use similar algorithms as are in bryce, et. al. to create the alpha maps then just use their own custom texture tiles underneath. Should be able to create something pretty good looking. I'm sure we'll be interested to see the result!
Go to the top of the page
 
+Quote Post
Dead Workers Par...
post Jan 21 2007, 06:18 AM
Post #5



Group Icon

Group: Moderators
Posts: 204
Joined: 16-December 06
From: Huntsville, AL
Member No.: 51



Well I'm no longer generating a terrain for the shot of the army marching. It was taking me too long to perfect, so for now I've created a parallax shot using stills. I found that if I took still shots of a hills in different zones, I could use them as plates to build the perfect set for this scene.

I'll post some images soon. I would right now, but I'm rendering a test and my computer is crawling.


--------------------
Eric Fullerton
DEAD WORKERS PARTY

Check out our many fine podcasts!
Go to the top of the page
 
+Quote Post
TheGodfather
post Jan 21 2007, 06:24 AM
Post #6





Group: Members
Posts: 654
Joined: 19-November 06
From: California
Member No.: 2



QUOTE (Dead Workers Party @ Jan 21 2007, 06:18 AM) *
Well I'm no longer generating a terrain for the shot of the army marching. It was taking me too long to perfect, so for now I've created a parallax shot using stills. I found that if I took still shots of a hills in different zones, I could use them as plates to build the perfect set for this scene.

I'll post some images soon. I would right now, but I'm rendering a test and my computer is crawling.


Sweet looking forward to it!
Go to the top of the page
 
+Quote Post
Dead Workers Par...
post Feb 10 2007, 12:33 AM
Post #7



Group Icon

Group: Moderators
Posts: 204
Joined: 16-December 06
From: Huntsville, AL
Member No.: 51



Now that our movie is completed, I'll explain how the 'army over the hill' shot was created.

If you haven't seen this yet, you can watch it here.

First we spent alot of time travelling in-game to find a hill with minimal trees, bushes, and rocks. A good patch of grass was found in Arathi Highlands. Using the mapviewer, I turned off all trees and recorded while craning the camera upwards very slowly from the ground all the way to the sky.

The color and gamma in this footage was treated to match the look of the rest of the movie.



In After Effects 7, I rotoscoped the apex of the hill so that the background could be replaced with something more interesting.



Many stills were taken in-game for a background that could look like it belongs near Southshore (where the action will take place). This stillshot was colored and a glow effect was added to give the sky a soft backlight, which would allow our army to be more visible as they travel in front of it.



The background was animated to move slowly downward to simulate a parallax motion.

Next, I used a photograph to add clouds to the scene.



The photo's color and gamma were altered, a glow was added, the opacity was dropped to 30%, and the layer's transfer mode set to "Pin Light". This cloud layer simply moves to the right at a slightly faster rate than the downward motion of the background.



The background is finished. Now it's time to add an army of Undead.

Using wowmodelviewer, each character was recorded individually with a green background color. 21 animations were imported into AE7 and the green was replaced with transparency. Each layer was colored and gamma treated, resized, and positioned. These will be our "foreground army".



These actions were duplicated for adding another 24 layers of characters for our "background army". Color and gamma values were treated differently to appear as though they are further away.



Animating the 2 armies consisted of adding a null object and parenting the army layers to it. Moving the null object up or down would result in the entire army moving up and down.



The null object was assigned to move up, causing the "foreground army" to adopt it's motion. Simple physics say that objects moving the same speed appear slower when further away. So, the "background army" needs to move a little bit slower. I parented the "background army" to the same null object but I applied a math expression which tells the army to move only a small percentage of null object's current speed.

In addition, the warmachine on the right side which is part of the "foreground army" was a stillshot. So to give it some motion, I used AE7's "wiggler" to generate some random rotation on the X and Y axis.

The final composited shot:



Here is an alternative background plate which got replaced because it didn't look like it could be near the same location, and the darkness of the horizon doesn't really allow the army to pop out as much as the other background. Plus I don't like the lack of trees in that shot.



--------------------
Eric Fullerton
DEAD WORKERS PARTY

Check out our many fine podcasts!
Go to the top of the page
 
+Quote Post
Thundara
post Feb 10 2007, 02:35 AM
Post #8





Group: Members
Posts: 68
Joined: 20-January 07
Member No.: 170



O.o Wow, that's really interesting how much work went into effect to simply create a good looking hill.

Not really sure about the possibilities of After Effects, but would it be possible to remove the land from a clip and just be left with the sky? Basically just inverting what you did for the hill.
Go to the top of the page
 
+Quote Post
Dead Workers Par...
post Feb 10 2007, 03:57 AM
Post #9



Group Icon

Group: Moderators
Posts: 204
Joined: 16-December 06
From: Huntsville, AL
Member No.: 51



Sure, in fact there is a little "invert" button on masks that would do exactly that.


--------------------
Eric Fullerton
DEAD WORKERS PARTY

Check out our many fine podcasts!
Go to the top of the page
 
+Quote Post
Thundara
post Feb 10 2007, 04:29 AM
Post #10





Group: Members
Posts: 68
Joined: 20-January 07
Member No.: 170



QUOTE (Dead Workers Party @ Feb 9 2007, 07:57 PM) *
Sure, in fact there is a little "invert" button on masks that would do exactly that.


Ha, pitty I don't have AE though...

A note about cameras, there are mods out there that let you control cameras via keys, allowing for much smoother camera movement.
Also, if I get around to it, I'll put up a tutorial showing how to move the camera between views for a cool effect :D
Go to the top of the page
 
+Quote Post
TheGodfather
post Feb 10 2007, 06:27 AM
Post #11





Group: Members
Posts: 654
Joined: 19-November 06
From: California
Member No.: 2



QUOTE (Thundara @ Feb 10 2007, 04:29 AM) *
Ha, pitty I don't have AE though...

A note about cameras, there are mods out there that let you control cameras via keys, allowing for much smoother camera movement.
Also, if I get around to it, I'll put up a tutorial showing how to move the camera between views for a cool effect :D


between views?
Go to the top of the page
 
+Quote Post
Dopefish
post Feb 12 2007, 08:53 AM
Post #12



Group Icon

Group: Moderators
Posts: 150
Joined: 8-February 07
From: Sweden
Member No.: 282



QUOTE (Tristan @ Feb 10 2007, 07:27 AM) *
between views?

Maybe he means between clips? :sweat:

EDIT: Nah, I see the tutorial now :blush:
Go to the top of the page
 
+Quote Post
Darjk
post Mar 15 2007, 12:31 PM
Post #13





Group: Members
Posts: 49
Joined: 14-March 07
From: Brisbane, Australia
Member No.: 456



QUOTE (Dead Workers Party @ Dec 28 2006, 10:46 AM) *
I did notice that these scripted camera paths were stored in the MPQs, although I didn't see the value in them. However, that's a very interesting thought of importing camera paths into the in-game camera.


Is it even possible to load or execute camera models/paths during gameplay?
Or would the idea be more to overwrite the existing start-up camera's with custom ones to goto the area's and scenery and recording it from there?

I'm currently working on a Max M2 exporter plugin but currently not bothering with any camera data. If it is possible to use custom camera paths (models), then I could probably look at making a plugin available specifically for that.
Go to the top of the page
 
+Quote Post
Thundara
post Mar 15 2007, 10:59 PM
Post #14





Group: Members
Posts: 68
Joined: 20-January 07
Member No.: 170



QUOTE (Darjk @ Mar 15 2007, 05:31 AM) *
Is it even possible to load or execute camera models/paths during gameplay?
Or would the idea be more to overwrite the existing start-up camera's with custom ones to goto the area's and scenery and recording it from there?

I'm currently working on a Max M2 exporter plugin but currently not bothering with any camera data. If it is possible to use custom camera paths (models), then I could probably look at making a plugin available specifically for that.


Well, the origin of the camera isn't static, meaning you could move the gnome intro camera down to Caverns of Time if you wanted, but the movement of the camera itself is in the .m2 file.
Go to the top of the page
 
+Quote Post
Darjk
post Mar 15 2007, 11:11 PM
Post #15





Group: Members
Posts: 49
Joined: 14-March 07
From: Brisbane, Australia
Member No.: 456



So the only way to utilise custom camera models would be to overwrite the existing intro ones, correct?

If there is interest within the community will start working on a M2 exporter for 3DS Max specifically for camera pathing. However I have a gut instinct that there would be a lot of trial-and-error involved with actually positioning and pathing the camera correctly.


--------------------
Go to the top of the page
 
+Quote Post
Thundara
post Mar 16 2007, 01:04 AM
Post #16





Group: Members
Posts: 68
Joined: 20-January 07
Member No.: 170



QUOTE (Darjk @ Mar 15 2007, 04:11 PM) *
So the only way to utilise custom camera models would be to overwrite the existing intro ones, correct?

If there is interest within the community will start working on a M2 exporter for 3DS Max specifically for camera pathing. However I have a gut instinct that there would be a lot of trial-and-error involved with actually positioning and pathing the camera correctly.

Well, there are files, called the database cache, which specify where the model is played, what direction, the sound played during the camera movement, and the treepath to the model used. But all the data for each camera played is organized in a row starting with the ID to it and the ID which is played is Q'd server side (I think) So you'd have to replace another race's camera with it.
Go to the top of the page
 
+Quote Post
Darjk
post Mar 16 2007, 02:17 AM
Post #17





Group: Members
Posts: 49
Joined: 14-March 07
From: Brisbane, Australia
Member No.: 456



QUOTE (Thundara @ Mar 16 2007, 11:04 AM) *
Well, there are files, called the database cache, which specify where the model is played, what direction, the sound played during the camera movement, and the treepath to the model used. But all the data for each camera played is organized in a row starting with the ID to it and the ID which is played is Q'd server side (I think) So you'd have to replace another race's camera with it.


Hmmm? Ah I see it, the Cinematic Camera DBC. ID, Model, Length or ZoneID?, X,Y,Z, Something?
Alright thats easy enough, then on character creation it just follows the Camera animation. Will do a test run after I've had some sleep - if everything works nicely will begin writing a plugin for cameras.


--------------------
Go to the top of the page
 
+Quote Post
Thundara
post Mar 17 2007, 03:11 PM
Post #18





Group: Members
Posts: 68
Joined: 20-January 07
Member No.: 170



QUOTE (Darjk @ Mar 15 2007, 07:17 PM) *
Hmmm? Ah I see it, the Cinematic Camera DBC. ID, Model, Length or ZoneID?, X,Y,Z, Something?
Alright thats easy enough, then on character creation it just follows the Camera animation. Will do a test run after I've had some sleep - if everything works nicely will begin writing a plugin for cameras.


http://www.sourcepeek.com/wiki/CinematicCamera.dbc
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



Lo-Fi Version Time is now: 22nd July 2019 - 08:51 PM| Skin Developed By Creative Networks