Camera Angles

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
bakershah
Posts: 32
Joined: Sun Oct 19, 2014 10:26 am

Camera Angles

Post by bakershah »

Hello,



So as i was working on my project. I found the system using camera angles even though i didn't want to. I want to trigger the conversation in the default position the camera is in but for some reason when I enter a conversation I get switched to another camera outside the world. I tried to delete everything related to camera angles but the problem persists. any help?
bakershah
Posts: 32
Joined: Sun Oct 19, 2014 10:26 am

Camera Angles

Post by bakershah »

Did some more digging and found when I enter a conversation A sequencer camera spawns in the scene. Is there any way to disable camera angles?
User avatar
Tony Li
Posts: 22099
Joined: Thu Jul 18, 2013 1:27 pm

Camera Angles

Post by Tony Li »

Hello,



On the Dialogue Manager GameObject, change Camera Settings > Default Sequence to:

Delay({{end}})

This will leave the camera untouched. It will simply delay for the duration specified in Subtitle Settings. More info here.



If you don't want to delay at all, set Default Sequence to:

None()
bakershah
Posts: 32
Joined: Sun Oct 19, 2014 10:26 am

Camera Angles

Post by bakershah »

Ok so in the dialogue manager I simply set the sequencer camera as my main camera and it worked fine in the editor and it doesn't spawn another sequencer camera. However whenever I build the game and test it the error still persists in the build....
User avatar
Tony Li
Posts: 22099
Joined: Thu Jul 18, 2013 1:27 pm

Camera Angles

Post by Tony Li »

I think we posted at the same time. If my earlier suggestion to change the Default Sequence isn't applicable to your situation, please let me know.
bakershah
Posts: 32
Joined: Sun Oct 19, 2014 10:26 am

Camera Angles

Post by bakershah »

Yup I tried both ways. Neither worked. The camera will stay the same like I want in the editor however on the build it will spawn a sequencer camera when I enter a conversation.
User avatar
Tony Li
Posts: 22099
Joined: Thu Jul 18, 2013 1:27 pm

Camera Angles

Post by Tony Li »

What platform are you building to? And what version of Unity are you using?
bakershah
Posts: 32
Joined: Sun Oct 19, 2014 10:26 am

Camera Angles

Post by bakershah »

I am using Unity 4.5.5. Iv'e tested this on web builds as well as standalone mac and windows.... the same problem persists with the sequencer camera.
User avatar
Tony Li
Posts: 22099
Joined: Thu Jul 18, 2013 1:27 pm

Camera Angles

Post by Tony Li »

Can you email a project that demonstrates the issue to tony (at) pixelcrushers.com? (If it's too big for email, please email me so I can reply with FTP site instructions.)



I just tested a variation of the Feature Demo in web and Windows builds after making these changes:



Removed all Camera() sequencer commands from the NPC's conversation.

Set the Dialogue Manager's Default Sequence to "None()".

Left Sequencer Camera and Camera Angles unassigned.



That scenario works fine. If you can't send a project, could you give me some steps to reproduce the issue?



Thanks,



Tony
User avatar
Tony Li
Posts: 22099
Joined: Thu Jul 18, 2013 1:27 pm

Camera Angles

Post by Tony Li »

(I'm posting the fixes we identified via email so it can help out others who might be having the same issues.)



In brief:



1. Make sure a camera is tagged MainCamera.



2. Use only one Dialogue Manager GameObject across your project, or untick Don't Destroy On Load and Allow Only One Instance if you want to have a separate Dialogue Manager in each scene.







More info:



1. When a conversation starts, the Dialogue Manager makes sure that there's a camera available in case the conversation uses Camera() sequencer commands. If no camera or prefab is assigned to its Sequencer Camera field, it checks Camera.main (which depends on a camera being tagged MainCamera). If it doesn't find one, it creates a temporary camera for the duration of the conversation. By tagging the player's camera as MainCamera, the Dialogue Manager no longer created a temporary one.



2. If you have a Dialogue Manager in the main menu scene, and Don't Destroy On Load and Allow Only One Instance are ticked, the instance from the main menu scene will stick around when you switch to a gameplay level. It will also destroy any Dialogue Manager instances defined in the gameplay level. If your custom settings are on the Dialogue Manager instance in the gameplay level, they'll be gone because the instance from the main menu will still be around.



The fix was to put custom settings on the Dialogue Manager instance in the main menu scene. In the gameplay level scene, deactivate the Dialogue Manager instance. You can still keep it around and reactivate it temporarily if you want to test playmode straight from that scene. But to go from the main menu, remember to deactivate the instance in the gameplay level scene first.
Post Reply