Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

GTGD's Unity Multiplayer Tutorials

Discussion in 'Community Learning & Teaching' started by GTGD, Feb 7, 2012.

?

Please select each option you agree with (you can select multiple options)

Poll closed Dec 22, 2015.
  1. I like that the videos are covering a complete project.

    230 vote(s)
    88.1%
  2. I find the videos are detailed enough for me to understand and follow.

    197 vote(s)
    75.5%
  3. I find the video quality is clear enough.

    186 vote(s)
    71.3%
  4. I find the audio quality is clear enough.

    180 vote(s)
    69.0%
  5. The narrator doesn't send me to sleep.

    143 vote(s)
    54.8%
  6. In general the topics covered are interesting.

    170 vote(s)
    65.1%
  7. I find the website useful.

    130 vote(s)
    49.8%
  8. The Gamer To Game Developer logo looks good.

    119 vote(s)
    45.6%
  9. I would like to suggest topics that GTGD should cover in the future.

    103 vote(s)
    39.5%
Multiple votes are allowed.
  1. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Hello, you had a null reference error in your original post so that will have been telling you that at the mentioned line of code the object being referenced there isn't being found, which will mean that you haven't set that object up properly.

    I do remember there being odd behaviour that if sometimes one character controller jumps at the right spot on top of another character controller the former would shoot up into the sky. I think that was a bug with the character controller. In your case though it sounds much worse. Double check that there aren't any other gameobjects attached to the player that have an active collider attached. Disable them if there are because I think they'd be colliding with the character controller continuously.

     
  2. Stoakes

    Stoakes

    Joined:
    Sep 15, 2014
    Posts:
    4
    EDIT : Problem solved

    I found the solution to my issue : It was linked to the CameraTop and the CameraBottom !
    Indeed, when you creat a cube game object, a collider is assigned by default to that cube (Unity 4). Thus it bumped into the ground, making the player fly.
     
    Last edited: Oct 7, 2014
  3. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    LOL, good work finding the infringing collider.

     
  4. H00D3DM4N2787

    H00D3DM4N2787

    Joined:
    Aug 6, 2014
    Posts:
    27
    Hey
    I have a Question with the multiplayer script

    how would i script this


    When i click connect to a server
    how would i show a list of servers that already exist???
     
  5. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    You'll want to use the master server. My old S2 tutorials show how to use Unity's test master server and my GTGD S2 tutorials on Steam show how to deploy a master server. That's intermediate stuff though so if you're a beginner then go through enough of S1 until you're comfortable enough with networking in Unity.

     
  6. H00D3DM4N2787

    H00D3DM4N2787

    Joined:
    Aug 6, 2014
    Posts:
    27
    Thanks GTGD
    ur probly one of my favorite tutors and ive only just discovered u

    unfortunately im still up to
    S1.8

    and no im not that comfortable with this just yet

    so ill need some time

    but thanks for ur answer :)
     
  7. H00D3DM4N2787

    H00D3DM4N2787

    Joined:
    Aug 6, 2014
    Posts:
    27
    To anyone who read this comment before i edited it

    WOW i am sooooo stupid

    i put "=" in an if statement instead of "=="

    that was my mistake this whole time

    WOW
    i am dumb

    SORRY GUYS
     
    Last edited: Oct 29, 2014
  8. H00D3DM4N2787

    H00D3DM4N2787

    Joined:
    Aug 6, 2014
    Posts:
    27
    hi GTGD this might sound like a very stupid question

    but the scripts u ask me to download in video S1.14

    are they royalty free?
    because if i decide to use them in a game i plan to sell
    i wanna know would i need to pay you? (which im happy to discuss)
     
  9. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Any scripts written by me are fine for you to use in your own commercial projects. Just make sure your game looks and feels different to the tutorial project. The tutorial project is a poor game anyway, but it's effective for teaching.

     
  10. AlwaysBeCoding247

    AlwaysBeCoding247

    Joined:
    Jan 27, 2014
    Posts:
    41
    I got series 1 from steam a long time ago and downloaded the project files to my computer, but I just got series 2 today and cant find where/how to download the files for it, I was just able to download the actual game. Im sure I am missing something obvious, I am not familiar with steam, just got it to get the project folders for this series. Can anyone point me in the right direction please
     
  11. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    You'll find GTGD S2 under Library > Software. When you launch it you'll be presented with a list of buttons. The third button will take you to the project folder.

    upload_2014-11-6_18-45-59.png

     
  12. AlwaysBeCoding247

    AlwaysBeCoding247

    Joined:
    Jan 27, 2014
    Posts:
    41
    Awesome. Thank you very much. Looking forward to series 2
     
  13. sirawesome1337

    sirawesome1337

    Joined:
    Nov 29, 2014
    Posts:
    1
    Hey GTGD I want a refund your tutorials are outdated on steam. I want to use the new unity not the old unity.
     
  14. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    Why outdated, it can be used with 4.x and even the coming 5 version has the same network code.
     
  15. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Thanks GTGD for Series 2,

    It's Fantastic !

    I did series 1 a while ago and the rediscovered GTGD today. Bought S2 watched all the videos, watched all your youtube vids (love the new games btw) and generally did some "Catch up"

    In my opinion everything about the package top quality, The code is squeaky clean, the logic and approach you have taken some very difficult "Game Industry" problems makes perfect sense and is well .... logical.

    I have a couple of questions but I will ask them in separate posts.

    I just wanted to say Thank you very very much for making S2.

    Roy
     
  16. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Question about Networks and Servers

    I did not know about Amazon EC2 until I watched your video also I've not done much with Unity Master Server, I think it had problems in the early days or something, so I've always fiddled with the photon service.

    So lets say optimistically eventually with a bit of luck I release a game on steam, a multiplayer PC game for up to 6 or 8 players per server.

    And lets say optimistically 10,000 people buy the game, who pays to host all these game instances? is it me do I upgrade my amazon EC2 to some giant package?
    From a business point of view selling a game for a "one time fee" and incurring an ongoing hosting cost till the end of time doesn't make sense.

    Or do the customers only get to host servers locally on their PC's? with the associated problems that can bring opening ports etc.

    I don't know how all this works but feel I should at least be thinking about it.

    Do you have any ideas, or advice?

    Roy
     
  17. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Enhancement Request

    First Person Full body awareness across the network with mecanim animations, that's literally the stuff of dreams for me.

    No more giant arms floating in front of the camera, no more missing legs, more importantly no more smoke and mirrors, this is just wonderful.

    While watching Video 8 about the camera orbit a thought occurred to me.

    In my opinion first person is far more immersive than 3rd person and it is primarily a 1st person experience that I want to create.

    It is difficult for me to explain but I will try:

    So in 3rd person the player can orbit the camera around the character by holding right mouse, and in 1st person this is disabled.

    What I would like to do / suggest is that holding the right mouse in 1st person moves the head, so if your are pressing W and running forward you can look around by holding the right mouse.

    There would be restrictions to stop the camera moving all the way round 360 degrees.

    This has extremely important connotations for gameplay

    I call it the "Broken Neck" problem because in first person it's like you've broken your neck and it is in plaster and you can only look around by moving your whole body.

    Often in games you are being chased by a monster, enemy, zombie etc. In the vast majority of games you are forced into going 3rd person and orbiting the camera to look behind thus breaking immersion, or stopping and turning your whole body to look.

    Moving and being able to look around at your environment in my experience is very immersive, you can let go of the right mouse briefly to make course corrections then press it again to look around.

    Going forward in the future this is how Oculus rift works, instead of right mouse it uses head tracking for input, but the principle is the same: you press W to walk forward and are able to look around, and other players can see you're looking around because your head is moving.

    This enhancement would make your product perfect, and as almost a by-product you will have created the best Oculus character system there is.

    I will help in any way I can, or I will do it myself butchering your code in the process lol.

    Roy aka "The Code Butcher"
     
  18. jakobdzl

    jakobdzl

    Joined:
    Nov 11, 2012
    Posts:
    7
    Hello, I purchased your video series on steam and have been trying to implement the multiplayer into a game im working on. I am able to set up and connect to a server, but the touch controls i use control all players
     
  19. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    You'd pay for the master server. If you choose to have some dedicated servers then yes you'd need to hire much more expensive Amazon servers that have enough performance to handle lots of in game events. If you aren't having any dedicated servers and you're just leaving it to the players to setup their own servers then you only pay for your master server. If your game is single player with the option of multiplayer then players in general wouldn't expect you to have dedicated servers. If your game is only multiplayer then I think you must have some dedicated servers otherwise that will be very awkward for the players.

    If lots of players buy your game then you may also need a more powerful Master Server because you can change the max number of allowed connections (default is 1000 I think and that includes clients and servers).


     
    nomax5 likes this.
  20. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    It's not difficult to achieve that. You'll need to check that the player is in first person mode and that they are doing a free look. While this condition is true the MouseLook script on the body is disabled so the player transform doesn't turn when free looking. You can add some clamping to the mouselook script just like it is clamped for the vertical motion. I think that might be it.

     
    nomax5 likes this.
  21. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    You probably just haven't edited the CharacterMotor script properly. You also have to edit the MouseLook script as per the video.

     
  22. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Thanks GTGD, That is really helpful because I thought I was making a multiplayer game, now I realise I'm making a single player game with the option of multiplayer and that has to be considered in my gameplay design.


     
  23. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    I was thinking along the same lines while looking through your code, I'll do it.

    If I get very stuck I might pop back and ask a question or two but I already know I have a fantastic base to start making my own enhancements with, thanks.

     
  24. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Getting Started with a New Project

    I've gone through the videos and examples etc. So Now I'm creating a new project and obviously I'm going to use GTGD S2 as a base.

    How do you do that?

    Currently I copy the whole GTGD S2 project to a temporary folder in windows.

    Rename the folder to something like roy_project

    Rename GTGD S2.sln to roy_project.sln

    Rename GTGD S2.userprefs to roy_project.userprefs

    Rename GTGD S2-csharp.sln to roy_project-csharp.sln

    Then I copy the whole folder roy_project back to where I keep my projects

    Then start Unity choose "Open Other"

    Select the folder roy_project

    And it works.

    There must be an easier way?

     
  25. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    General Networking Question

    I thought I'd sneak another question in :) I'm using the Amazon EC2 like in GTGD video

    So in a single player game I think generally you have some sort of manager script that spawns monsters/ NPC's then each monster has its own AI.

    But in a multiplayer game we don't want each client to be spawning monsters

    So what do you do? or what would you advise?

    Do you have some server code that manages all the monsters and updates each client

    Or do you have the first player to join the room as like a master client?

    Roy
     
  26. Syrabus

    Syrabus

    Joined:
    Dec 7, 2014
    Posts:
    5
    Using Unity 4.6, I do think that your tutorial is awesome. Just when I am trying to do the blasterscript, I am getting a few errors, just want to know exactly what i am doing wrong and what i can do to fix it. Thank you in advance.

    Code (CSharp):
    1. using UnityEngine;
    2. using System.Collections;
    3.  
    4. /// <summary>
    5. /// This script is attached to the Blaster projectile and it
    6. /// governs the behaviour of the projectile.
    7. ///
    8. /// </summary>
    9.  
    10.  
    11. public class BlasterScript : MonoBehaviour {
    12.  
    13.     //Variables Start
    14.  
    15.     //A quick reference.
    16.  
    17.     private Transform myTransform;
    18.  
    19.     //The projectiles flight speed.
    20.  
    21.     private float projectileSpeed = 10;
    22.  
    23.     //Prevent the projectile from causing
    24.     //further harm once it has hit something.
    25.  
    26.     private bool expended = false;
    27.  
    28.     //A ray projected in front of the projectile
    29.     //to see if it will hit a recognisable collider.
    30.  
    31.     private RaycastHit hit;
    32.  
    33.     //The range of that ray.
    34.  
    35.     private float range = 1.5f;
    36.  
    37.     //Variables End
    38.  
    39.     void Start ()
    40.     {
    41.         myTransform = transform;
    42.     }
    43.    
    44.     // Update is called once per frame
    45.     void Update ()
    46.     {
    47.         //Translate the projectile in the up direction the pointed
    48.         //end of the projectile.
    49.  
    50.         myTransform.Translate (Vector3.up * projectileSpeed * Time.deltaTime);
    51.    
    52.         //If the ray hits something then execute this code.
    53.  
    54.         if(Physics.Raycast(myTransform.position,myTransform.up, out hit, range) &&
    55.            expended == false)
    56.         (
    57.              //If the collider has the tag of Floor then..
    58.  
    59.                 if(hit.transform.tag == "Floor")
    60.                 (
    61. //                expended = true;
    62.  
    63.                     //Make the projectile become invisible.
    64.  
    65.                 myTransform.renderer.enabled = false;
    66.  
    67.                 //Turn off the light. The halo will also disappear.
    68.  
    69.                 myTransform.light.enabled = false;
     
  27. Stoakes

    Stoakes

    Joined:
    Sep 15, 2014
    Posts:
    4
    Hi, i'm trying to improve blaster by adding a riflescope.

    I inspired from crouching.cs which also move Main Camera. Thus I copied crouching.cs, rename "crouching" button to "aiming" and changed class name. When i press the "aiming" button, x position (of the camera) is updated but only for a few milliseconds, then it goes back to the initial position.

    Have you any idea or suggestion because i have been working 3 hours on it without success.
     
  28. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    One option is to leave the instantiation of NPCs to the server using network.instantiate. You can maintain a list of info about those npcs (e.g. unique NPC name, position of npc, what their target is, health) so that when a new player joins their list of npcs is immediately updated to the last known values. In this approach you would have the AI logic happen only on the server and then movements and actions updated across the network. The downside here is that we are using Network.Instantiate which is a buffered RPC and this will mean that destroyed NPCs will spawn for newly connecting players and we have to manually remove them if they are not in the list. We can't just use Network.RemoveRPCs because this would get rid of all the buffered RPCs on the server if I'm not mistaken.

    I haven't tried this but I'm pretty sure that another option is to use a normal instantiate on the server and maintain the same list of info. When new players join, this list is reconstructed on their end and they then instantiate those NPCs according to that list. If it is critical that NPCs remain in sync across all game instances then have the server maintain that list and then update each of the players with the latest movement info. If being in sync is not critical then give the NPCs target/waypoints and let them navigate for themselves on the client end and on the server independently.

    If NPCs are damaged by a player then that player needs to inform the server and the other players that such and such NPC in the list has been damaged for X amount. Environment damage to an NPC can probably only be handled correctly on the server, e.g. the NPC falls from a height (players are not responsible for imparting damage here).

    Well those are some thoughts of the top of my head.

     
  29. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Hello, what errors are you getting?

     
  30. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    The camera currently follows the camerahead so you need to alter it's behaviour in how it follows when you want to be scoping. Use a boolean as a flag so that when not scoped the behaviour is as per usual, but when scoped the behaviour of the camera is the new one you are implementing.

     
  31. SigmaSupreme

    SigmaSupreme

    Joined:
    Jan 2, 2015
    Posts:
    2
    It feels a bit late to be asking this but I'm getting this problem where the player's name is set to a random number every time they die. I just can't seem to find out why this happens or locate the source but I do know it's probably a problem with PlayerName.cs, SpawnScript.cs or HealthAndDamage.cs. No errors show up but it's just a thing that constantly annoys me. Can anyone help?
     
  32. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    That is happening by design. The name of the player is stored in player prefs so when you respawn the player while you have more than one client open, it will pull the last name saved in player prefs and so it will find this name to already be used and so a random number is given. In S2 I have a better name solution that I think prevents a same name like how is done in Half Life multiplayer.

     
  33. SigmaSupreme

    SigmaSupreme

    Joined:
    Jan 2, 2015
    Posts:
    2
    SO this only occurs when I'm running my server and client on the same computer. (In which case I don't think I need to worry)
     
  34. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    That's right. Only if there are two clients on the same computer. You can still have a server and a client on the same computer with no problem.

     
  35. Stoakes

    Stoakes

    Joined:
    Sep 15, 2014
    Posts:
    4
    If you're interested, i posted my code on Github : https://github.com/Stoakes/GTGD-Unity-3D-Improvement-Scripts
     
  36. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
  37. Syrabus

    Syrabus

    Joined:
    Dec 7, 2014
    Posts:
    5
    Sorry I could not say exactly what the errors were. I ended up deleting the script. This is what I put in Mono.

    Code (CSharp):
    1.     using UnityEngine;
    2.     using System.Collections;
    3.    
    4.     /// <summary>
    5.     /// This script is attached to the Blaster projectile and it
    6.     /// governs the behaviour of the projectile.
    7.     ///
    8.     /// </summary>
    9.    
    10.    
    11.     public class BlasterScript : MonoBehaviour {
    12.    
    13.         //Variables Start
    14.    
    15.         //A quick reference.
    16.    
    17.         private Transform myTransform;
    18.    
    19.         //The projectiles flight speed.
    20.    
    21.         private float projectileSpeed = 10;
    22.    
    23.         //Prevent the projectile from causing
    24.         //further harm once it has hit something.
    25.    
    26.         private bool expended = false;
    27.    
    28.         //A ray projected in front of the projectile
    29.         //to see if it will hit a recognisable collider.
    30.    
    31.         private RaycastHit hit;
    32.    
    33.         //The range of that ray.
    34.    
    35.         private float range = 1.5f;
    36.    
    37.         //Variables End
    38.    
    39.         void Start ()
    40.         {
    41.             myTransform = transform;
    42.         }
    43.      
    44.         // Update is called once per frame
    45.         void Update ()
    46.         {
    47.             //Translate the projectile in the up direction the pointed
    48.             //end of the projectile.
    49.    
    50.             myTransform.Translate (Vector3.up * projectileSpeed * Time.deltaTime);
    51.      
    52.             //If the ray hits something then execute this code.
    53.    
    54.             if(Physics.Raycast(myTransform.position,myTransform.up, out hit, range) &&
    55.                expended == false)
    56.             (
    57.                  //If the collider has the tag of Floor then..
    58.    
    59.                     if(hit.transform.tag == "Floor")
    60.                     (
    61.     //                expended = true;
    62.    
    63.                         //Make the projectile become invisible.
    64.    
    65.                     myTransform.renderer.enabled = false;
    66.    
    67.                     //Turn off the light. The halo will also disappear.
    68.    
    69.                     myTransform.light.enabled = false;
    70.  
     
  38. frankyboy450

    frankyboy450

    Joined:
    Jan 21, 2011
    Posts:
    106
    Hey
    How does new people join know where all the players are? the networkview sync is off and I can't find the part in the code that instantiates them.
    I watched Season 1 to episode 12 and recently started over and getting help from them for my school project with zombies.
    when zombies have been instantiated and a new player joins, the zombies aren't visible for the new player. If I set sync on the networkView it works.
     
  39. Wtyson

    Wtyson

    Joined:
    Aug 15, 2014
    Posts:
    57
    been following your tut and just finished part 6 problem is im not able to do any damage and im not getting any errors at all i have double checked all my scripts and nothing is out of place so im a little lost on this
     
  40. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    I have a question for everyone. Would you like GTGD S3 to use Photon networking?

    I'm planning for the S3 project to be space multiplayer first person action.
     
    SpectralRook likes this.
  41. Krahgnatokz

    Krahgnatokz

    Joined:
    Mar 18, 2014
    Posts:
    8
    HOLY GOD MAN!!! Thank you very much!! this is crazy awesome!!
     
  42. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Hi GTG,

    Yes I for one would like to see GTGD S3 especially using photon.
    I have learn't so much from your previous tutorials.
    Not only are they very informative but I think the pace and quality of your vidoes is fantastic.

    Roy
     
  43. Krahgnatokz

    Krahgnatokz

    Joined:
    Mar 18, 2014
    Posts:
    8
    Hey GTGD, I read the question above and YESSSSSS!!!! It would be awesome if you made a tutorial series with Photon Network, seriousely epic.
    On another matter. Do you know how to find out the amount of concurrent users you can have on a server and how far can your players be from it? Like, if I set up a computer in my house as the server

    EDIT: Just to avoid making a new post, since it would be the 3rd in two days or so, make you season 2 available on Mac please!!! Insta buy!
     
    Last edited: Feb 5, 2015
  44. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Thanks for the feedback guys. I'm currently leaning towards Photon because it appears to be a much more stable networking system than the native Unity networking. It is a bit on the expensive side and the number of messages allowed per second for a room is very limiting. I'll need to be incredibly careful with how many messages are sent over the network, unlike S1 where messages are being sent all over the place :)

    @Krahgnatokz, I think when you look at your Photon dashboard on the Photon website you'll see the number of concurrent users. I'm not sure yet since I haven't used Photon in any projects yet. With the Photon cloud you are using their servers for getting communications across to each of the game instances but there isn't a standalone server as such from what I've seen. One of the players is the master client and this brings its own challenges since another player needs to become the master client when that one leaves. Anyways I've lots to study and learn still.
    I'll need to buy a Mac first :), maybe some day.

     
  45. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    I went through an excellent Unity Photon Youtube tutorial series by quill18creates linked below
    he swaps the "master client" when the master client leaves.
    I coded it as I watched videos but I think you can download his project files
    I found it extremely informative

    PS I use a firefox addon called "Download YouTube Videos as MP4 1.7.31" by ialc
    it simply adds a Download button next to Share button on youtube and you can choose the resloution upto 720p
    Once downloaded you can scrub back and forth without waiting for the annoying timer.
    I've accumulated about 100gb of unity videos over the years lol. Very handy



    Roy
     
  46. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Thanks, I'll study quill's tutorials and learn a thing or two. I've watched a few of his tutorials in the past and found them very interesting.

     
  47. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Everyone is invited to join the GTGD S3 group on Steam. Thank you if you join because your feedback will help me make S3 the best tutorial series that I'm capable of producing. Please invite your friends as well. I'm currently at work on S3 and it will be a multiplayer FPS using Photon networking.

    I'm splitting S3 into chapters and my intention is to release the first two chapters on YouTube and Steam with subsequent chapters being exclusive to a Steam release. As soon as each chapter is completed I'll produce tutorials so that hopefully no one has to wait too long for a set of tutorials and also I'll be able to consider feedback before producing the next chapter of tutorials.

    I really thank you all for your patience and support. If it hadn't been for my viewers there's no way I'd have been able to embark on S3 and to do something that I really enjoy doing.
     
    Cscompo likes this.
  48. nomax5

    nomax5

    Joined:
    Jan 27, 2011
    Posts:
    365
    Great news, I'm in. and good luck with S3
     
  49. Shmixil

    Shmixil

    Joined:
    May 25, 2015
    Posts:
    2
    Hey GTGD, I'm having a major problem with the camera. I attempted to put the camerahead inside the player and attach it to it, but it doesn't stay with the player as it moves. It acts as if it completely ignores the player model.
     
  50. GTGD

    GTGD

    Joined:
    Feb 7, 2012
    Posts:
    436
    Double check that there's no collider or rigidbody attached to the camerahead.