![]() |
![]() |
|
#1
|
|||
|
|||
|
I spent all of Sunday learning how to making a matinee and then implementing one in my map. On solo I tested it and ended up being very happy with the result.
Some time later I test on dedicated server and have some peops join. Got right to the end of the map, and said, 'ok guys brace yourself this will be the coolest thing'... and nothing. What should happen is that when a certain trigger is activated the cutscene starts, which should change the players viewport control over to the matinee. It only takes a few moments, then control should go back to the player. Like I said works in solo, but on multiplayer the control just isn't switched over for anybody. Anyone got an idea how to fix this? I know its a bit of a long shot as I have never seen a matinee in a KF map. Or even if someone can tell me with certainty that it won't work, so I can stop trying. Maybe its a similar reason to how KF-Icebreaker doesn't sway in multiplayer? |
|
#2
|
||||
|
||||
|
Use a KFSceneManager and KFCinematicCamera's instead.
__________________
|
|
#3
|
|||
|
|||
|
Thanks dude that's absolutely right. I didn't even think to look for any alternative actors.
In fact I think I'll share what I learned about how to do this, since I don't think its documented anywhere else on the internet. Other than having cutscenes in story mode maps, anybody could add some special flare to their map using this process - by putting in a cutscene on the waiting screen. So instead of players staring at the boring starting location of the map, it could scroll through some different camera angles you have setup of your map. Cutscenes in killing floor only work as still frame camera angles (AFAIK). So not as powerful as standard Unreal Matinees which give you huge control over camera movement and the way it faces. On the positive side, there's less to learn in KF cutscenes and you do get black bars on top and bottom of the screen and what I think is a subtle horror film cinematic effect (like when you spectate but not quite as good I think). 1. Decide how your cutscene will be triggered. I'm not going to write up a vast tutorial on triggering, this is covered in detail in other tutes. Anyway you will need a way triggering an event, lets call it 'MyScene'. 1. Place a KFSceneManager (actor->info->KFSceneManager) somewhere in your level, not neccessarily anywhere near the trigger you will use or the location of the cutscene. Personally I like to organise all of these kinds of actors outside of the level, and change their Drawscale to 10/10/10 to make them easy to locate and click on in my Top Down viewport. 2. Open the KFSceneManager properties, give it an event->tag of 'MyScene' - if you know anything about triggers then this is the standard way of having your actor consume a global event. You do it with KFDoorMover and ShopVolume without even knowing it. 3. Go into the KFSceneManager section of its properties and there is one there called CameraTag. For this example we're going to use 'MyCam1' as its value - this will match up with your first camera angle actor... 4. Place an actor KFActor->KFCinematicCamera roughly where you want your first camera angle to take place. Give it the Event->Tag ... you guessed it - 'MyCam1'. 5. Something very important I had to find out for myself is that in order to control which way the camera faces (otherwise it just goes East and with no tilt - boring!), you have to go to the camera's advanced properties and change bDirectional to True. Then you get an arrow coming out of it like any Projector would and you are in business. Rotate it however you like. 6. Finally, we set the properties under KFCinematicCamera. If you are having more angles in your scene, then go to 'nextCameraTag', and assign it to 'MyCam2'. Then Look at the 'ShotTime' - The value is set as number seconds you want this camera angle to last for in your movie. Easy! The only other thing I've actually messed with here are the subtitles. You can put up to 5 subtitles in per camera angle, and they will show as text in the movie, about 5 seconds apart from each other. So to have all 5 lines come up, you would need to have your ShotTime of at least 25 seconds, ok! 7. Repeat steps 5-6 for as many camera angles as you want in the scene. DONE! Hints: -If you do this to have a groovier "waiting for players to ready up" screen, I think I know how to trigger it. Have a standard player proximity trigger and put it right where player's spawn. IIRC, this will actually trigger as soon as someone enters the game. There may be more needed but that's a start -The very very best way to position your cameras exactly how you want them is to use the Lock To Selected Actor tool at the top of your ViewPort. Then click on the camera in the 3D Perspective viewport, and your view will lock to 'through the cameras eyes'. Then simply move around until you are looking at your scene exactly how you want to, and the camera will follow you. Don't forget to then UNclick 'lock to selected actor' and then click something else in your map -I had trouble with subtitles. If you want subtitles on EACH of your camera angles then you will have problems. It works to have a few lines on one long angle, but then if the next camera has subtitles as well, they are unlikely to show. In another 2 cameras time or so, it seems you can show subtitles again. So don't dream up anything to fantastic with subtitles coz you won't get it to work exactly how you want. And I think that will wrap it up or I'll be late for work! Last edited by driftwood; 05-18-2010 at 03:56 AM. Reason: confirmed property names |
|
#4
|
||||
|
||||
|
My suggestion if you want the camera to move is to attach it to a mover (The staticmesh I recommend is the default staticmesh (9mmPickup))
__________________
|
|
#5
|
|||
|
|||
|
In my last post I made a note that I was having trouble with subtitles. I've since figured it out. I don't know if anyone else is going to bother to include this in a map.. but hey I've come this far I'll might as well share what I learned.
Each KFCinematicCamera has a property for subtitles, an array of 5 elements. I originally assumed that each camera would start by displaying the string in the first element, followed by the second, and so on. NOT SO! For your first KFSceneManager, and your first KFCinematicCamera in that scene, then yes, it happens this way. I'll explain the rest by example. Say you have a KFSceneManager called OpeningScene, with 2 KFCinematicCameras linked, called OpeningCam1 and OpeningCam2. Say OpeningCam1 has the following in its subtitle array [0] Welcome to Driftwood's awesome map! [1] You'll notice I use some cutscenes. Wow! [2] [3] [4] ^^notice the last 3 elements are empty. So since each subtitle plays for 5 seconds, I just want OpeningCam1 to play for 10 seconds, to display the first 2 messages. Then the scene will switch to OpeningCam2. In order to have the subtitles continue on, I need to enter the Subtitles for OpeningCam2 like this: [0] [1] [2] See that! the camera angle just changed. cool huh? [3] Bored yet? [4] So you can see there must be some kind of global pointer telling the game which subtitle to play. It does not get refreshed for every camera angle as you would expect. But it doesn't stop there. We go a step further now, lets say a few minutes later we get to see our second KFSceneManager, called MidWaveScene, with a KFCinematicCamera called MidWaveCam1. If you are using subtitles for this camera, this is what you would need: [0] This is the second subtitle that will be displayed [1] This is the third [2] [3] [4] Believe it or not, we will see this subtitle first! So thats a real pain if you have a lot of SceneManagers - if you change something in an earlier scene you will have to readjust the subtitles in all subsequent scenes. If your Scenes don't neccessarily occur in a specific order, then your subtitles will be out of whack and I have no idea what else you could do. One last reminder - the subtitle pointer seems to switch every 5 seconds. So if you want 3 messages to display in a single KFCinematicCamera, make the ShotTime 15 seconds. You need to keep track of the number of seconds in all of your cameras in all of your scenes and divide by 5 in order to determine which element in the subtitle array will be played first for KFCinematicCamera n. |
|
#6
|
||||
|
||||
|
Quote:
__________________
|
|
#7
|
|||
|
|||
|
Online testing has shown that my last post, though theoretically correct, still doesn't hold up reliably in practise.
It would seem that the global marker to decide which subtitle to play is client side, and the subtitles are been pushed out from server side. Well thats how it seems to me, i cant be sure. One thing I did was alt tab out of the game during a cutscene. When I came back, the next scene that came up, the subtitles were messed up. I would guess that the same problem would apply for late joiners and people who die and miss a cutscene. The timing that determines the correct subtitle coming up also seems to be affected by lag. My solution has been to fill the entire array of subtitles with the same message. Ex: [0] Welcome to Driftwood's awesome map! [1] You'll notice I use some cutscenes. Wow! [2] Welcome to Driftwood's awesome map! [3] You'll notice I use some cutscenes. Wow! [4] Welcome to Driftwood's awesome map! That's actually an example of how I would display 2 messages over a period of 10 seconds, but most of the time I've just got 1 subtitle in every element of the array, for 5 seconds. This seems to be holding up, but obviously there's a limitation that you can't have a single camera scene for 25 seconds and display the subtitles in order. But thats no big deal because the work around would be to have 5 cameras in the same place if you like, make each camera 5secs and fill each camera's array with 1 message. |
|
#8
|
|||
|
|||
|
have you messed with the cameras being initially active or not?
|
|
#9
|
|||
|
|||
|
lol no I kept feeling like I definitely should have. Do you know what difference it makes?
|
|
#10
|
|||
|
|||
|
Quote:
i thought about doing cutscenes using the matinee mode, but it doesnt lock the person's mouse movements, so they can shakily move the cam a bit when they move the mouse during the matinee scene (using scene manage and interpolation points) i dont have online access at home, have you tried using the kfscenemanager/kfcinematiccamera in multiplayer? i dont know if the gamereplicationinfo supports cutscenes during online play. one thing i've found (using a moving kfcinematic camera) is that the firstperson arms/pistol model kinda floats around the room by itself. i dont know the extent of that yet, like on a big map, but i'll be testing out some more things. for an intro scene, give the playerstart an event (like introscene or wtvr) and link that to the kfscenemanager tag. |
|
#11
|
|||
|
|||
|
Quote:
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|