Information om denne video
Underviser: Christian 'Code' Skriver Kragegaard Video: 10:46 Lektion nr. 2 af 40
I denne video får vi bolden til at rulle rundt når du bruger piletasterne eller WASD tasterne.
Underviser: Christian 'Code' Skriver Kragegaard Video: 10:46 Lektion nr. 2 af 40
I denne video får vi bolden til at rulle rundt når du bruger piletasterne eller WASD tasterne.
Kun medlemmer med adgang til dette kursus kan stille spørgsmål og kommentere. Bliv medlem her!
jeg kan ikke få det her til at virke
public rigidbody er skrevet det rigtige sted, men når jeg går tilbage til unity er den ikke fremme altså rb, ved 4:13
jeg kan ikke komme videre.
jeg syntes også at det er lidt underligt at i viser det i unity 2017 jeg vidste ikke noget om det der jeg købte dette kursus.
Hej Marius!
Ja jeg kan godt forstå det er underligt, men jeg har også planer om at få det opdateret til Unity 6 :)
Dog vil det stykke kode ikke være anderledes i dag, så det er lidt underligt at det ikke virker for dig. Har du husket at trykke gem når du har skrevet koden? Eller trykke ctrl+s så gemmer den også.
Venlig Hilsen
Code
Jeg kan ikke få det til at virke, når jeg har skrevet Vector3 movement ind.. Det er som om Visual Studio ikke genkender Vector…
Jeg fandt ud af det :-)
Super :)
Hvis visual studio ikke gider at se de ting som er i Unity når du scripter (såsom Vector3, GameObjects osv. som ikke skifter farve) så skal du under preferences og vælger “external editor” og vælge visual studio i stedet for “open by extension”.
Hilsen Code
Når jeg skriver noget i mit script kommer der det der tegn ved siden af det gule streg og så anbefaler den at jeg gør dette:
https://imgur.com/a/weadgN6
MVH Bjarne R.
Hej Bjarne
Det du forsøger bliver ikke vist i videoen, prøver du at gøre det anderledes?
Din
“public PlayerMovement(Rigidbody rb)
{
this.rb = rb;
}”
Vil ikke rigtig gøre noget og er ikke som i videoen, kan du forklare hvad du prøver på? :)
Hilsen
Code
Jeg kan ikke starte mit spil fordi at der står at der er en error https://imgur.com/a/rFSd08f
Hej Bjarne
Det er fordi du har skrevet “new(Input.GetAxis…..” uden at fortælle den at det er en new Vector3 :)
Så din linje skulle være:
Vector3 movement = new Vector3(Input.GetAxis(“horizontal”, 0, Input.GetAxis(“Vertical”));
Hilsen
Code
Der kommer en error når jeg har skrevet “public Rigidbody rb:” og så kan jeg ikke finde mit Rigidbody script https://imgur.com/a/1BGNPjL
Hej Bjarne
Det er fordi du har lavet kolon : i stedet for semikolon ;
:)
Hilsen Code
Det virker!
Sådan! :)
Her er der et billede
https://imgur.com/a/rZJQYKU
Hej Pernille
Der mangler noget efter “Input.GetAxis(“Horizontal”),” der skal også lige være “,0,” så det bliver:
new Vector3(Input.GetAxis(“Horizontal”), 0, Input.GetAxis(“Vertical”) );
https://imgur.com/a/e39IqKI
Hej Pernille
Prøv at skriv et lille b i Rigidbody på linje 8.
Det undrer mig bare at den ikke selv foreslog Rigidbody korrekt, hvilket siger mig at Visual studio stadig ikke er helt rigtig sat op.
Prøv evt. igen at tjekke :
“Edit -> Preferences og derinde vil der være “External Tools”. Den står måske på “Open by extension” lige nu, men du skal lave den om til Visual Studio.”
ellers evt. tag et screenshot af den menu hvor der står “open by extension” for den burde have visual studio under.
Hilsen
Christian
Den står på open file by extention men jeg kan ikke finde visual studio nogen steder?
men der er to visual studio installer?
Mit ser sådan her ud:
https://i.imgur.com/BcdTL4z.png
Er den der ikke?
der er noget galt jeg kan ikke sende billeder af mit script med imgur?
:Din kommentar afventer bedømmelse. Dette er en forhåndsvisning, din kommentar vil blive synlig, efter at den er blevet godkendt.
Tror det er fordi at siden tror du er en bot som spammer links :) Men jeg har godkendt den.
Jeg kan se at dit visual studio ikke er sat korrekt op. Det sker af og til og også hvis man har installeret det fra ny. Det er nemlig megabesværligt at arbejde med det, når den f.eks. ikke giver dig forslag til koden.
I unity går du op i Edit -> Preferences og derinde vil der være “External Tools”. Den står måske på “Open by extension” lige nu, men du skal lave den om til Visual Studio.
Ang. koden så er problemet at “ skal være et ” :)
Så der skal stå “Horizontal” og “Vertical” – De gåseøjne er en vigtig forskel fra det andet tegn.
Nu har jeg prøvet at gøre det der men jeg kan slet ikke finde visual studio??
Hej Pernille
Det er en fejl jeg har stødt på mange gange og løsningen til den er ikke altid lige til, selv på en hel ren installation og det er rigtig træls, for det kan være at det er et andet program du har installeret som gør det (mindst sandsynligt) eller at det er noget i installationen (mere sandsynligt). Jeg vil foreslå dig at afinstallere både unity og visual studio under fjern programmer og så prøve at downloade Unity Hub.
Inde i Unity hub tager du så og downloader Unity, så vil den også installere visual studio med.
Det bliver nemlig rigtig besværligt for dig at lære at kode + lave unity hvis du ikke kan have dit værktøj til at fungerer ordenligt med, så håber at dette kan løse det for dig :)
Hilsen
Christian
Jeg er faktisk rimlig sikker på at jeg kom til at downloade det med android et eller andet
Nu har jeg gjort alt det du skrev men der kommer stadig en error
https://imgur.com/a/Vpismks
Kan du tage et billede af hele koden når du har det i visual studio? Så prøver jeg lige at se igennem igen :)
Hilsen
Christian
er det her fint nok fordi det virker ikke.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMovement : MonoBehaviour
{
public Rigidbody rb;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
vector3 movement = new vector3(Input.GetAxis(“Horizontal”).y, (input.GetAxis(“Vertical”));
rb.Addforce(movement);
}
}
Hej Pernille
I forhold til “}” ser det jo egentlig fint ud. Men har lige spottet en anden fejl (og det er faktisk nemmere at se hvis man er i Visual studio, for så laver den en rød streg under det som er forkert!)
Din:
vector3 movement = new vector3(Input.GetAxis(“Horizontal”).y, (input.GetAxis(“Vertical”));
Skal faktisk være:
Vector3 movement = new Vector3(Input.GetAxis(“Horizontal”), (Input.GetAxis(“Vertical”));
Et andet spørgsmål, får du egentlig røde streger under linjen når det er forkert? For det gør det nemlig sværere at kode hvis den ikke hjælper med at sige det :)
Hilsen
Christian
nu har jeg lavet nogle ændringer i mit script og der er kommet 3 nye errors
og der kommer ikke nogen rød streg men lidt længere nede på scriptet er der en lille rektangel vor der står no issues found.
https://imgur.com/a/gZ0cNGf
https://imgur.com/a/4uHpCVK
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMovement : MonoBehaviour
public. Rigidbody rb;
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
vector3 movement = new vector3(input.GetAxis(“horizontal”).y, (input.GetAxis(“vertical”));
rb.Addforce(movement);
}
}
Hej Pernille
Det er fordi “public Rigidboy rb” er et forkert sted (og havde et punktum efter public) den skal nemlig være indeni “PlayerMovement”. Alt der er i Playermovement er det som er mellem det efterfølgende { og som slutter ved } til sidst. De indkapsler koden.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMovement : MonoBehaviour
{
public Rigidbody rb;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
vector3 movement = new vector3(input.GetAxis(“horizontal”).y, (input.GetAxis(“vertical”));
rb.Addforce(movement);
}
}
Nu har jeg “skrevet din kode ind” de gamle errors blev fikset men nu er der kommet nogle nye
noget med Unexspectet character?
Hej Pernille
Jeg kan se at det er fordi du bruger citationstegn med “ i stedet for ” – en vigtig detalje!
For at lave citationstegn som du skal bruge, så trykker du shift+2 så du kan lave “.
Efter at have kigget på koden igen, så skal du også være obs på at der er nogle funktioner i koden som skal skrives på den rigtige måde, f.eks. skal der være stort V i “Vector3” og “Horizontal” og “Vertical” og “Input” har store begyndelsesbogstav.
Det har de fordi de inde i Unity’s kode er defineret til at hedde det med stort i de cases, så når man bruger variabler er det vigtigt at det står på den samme måde :)
Hilsen
Christian
Perfekt nu virker det næsten. der er bare en error tilbage. jeg uploader den nedenunder her
https://imgur.com/a/tdyXJPg
Når den siger “} expected” er det fordi den regnede med at koden var slut der og den blev lukket af med et “}”.
Prøv at se det jeg har skrevet, du har måske ikke fået den sidste } med :)
Hilsen
Christian
Hej Christian, når jeg opretter mit script og går ind i Unity kommer der bare en masse errors?
Hej Pernille
Hvilken version af Unity har du installeret? Og kan du tage et billede eller lign. af fejlene? :)
Hilsen
Christian
Jeg har version 2019.4.17f1 er det godt nok eller skal jeg hente noget andet?
Hej Pernille
2019 burde være helt fin :) (Den bruger jeg også for tiden selv)
Det vi skal finde ud af er om det er noget som er installeret på computeren eller noget helt andet som gør at du får en fejl.
Fejlens beskrivelse kan som regel hjælpe med dette.
Du må meget gerne screenshotte / tage et billede af fejlen og så kan du f.eks. uploade den hertil: https://imgur.com/upload så kan du skrive linket, så skal jeg nok se hvad det er som driller :)
Hilsen
Christian
Jeg håber det her link virker https://imgur.com/hSkIm7j
Hej Pernille
Jeg kan se hvor det stammer fra nu i hvert fald :) Vidste nemlig ikke om du allerede havde oprettet et script.
Inde i dit script, som hedder “PlayerMovement” der mangler der nok et {eller } til at omkapsle noget kode.
Hver gang du laver en “{” skal du også afslutte den et andet sted med }.
Hvis jeg skal hjælpe dig helt præcis i koden, så kan du tage og gå ind i din “PlayerMovement” og trykke “ctrl+A” så alt koden bliver markeret. Og så trykke “Ctrl+C” så det bliver kopieret og så kan du enten indsætte det her i en kommentar eller gøre det på https://pastebin.com/ (på pastebin forbliver formateringen nemlig læsbar så det ligner den kode du har på skærmen for mig :) )
På den måde kan jeg nemlig hurtigt se hvor den skal rettes til.
Hilsen
Christian
hjælp. Når du laver et skript, så skal du vælge sprog men, det kan jeg ikke. Du vælger c# men den mulighed har jeg ikke. Jeg kan heller ikke slå det til, og jeg har prøvet det du har gjort men, det virker ikke.. ved du hvad jeg skal gøre?
Hej Anders
Det behøver du ikke længere bekymre dig om. I videoen vises 2017 versionen og på det tidspunkt kunne man stadig vælge andre sprog at programmere i. Men I dag er det KUN C# når du laver et script :)
– Code
Hej Christian, Har de sidste par dage ikke haft tid til at rode mere med Unity Den siger der er en fejl Den kan ikke finde Pickop Har prøvet at fjerne og sæt ind igen og Der er en fejl med PlayerMovment Kan duv køre spillet og køre rundt med kuglen Samtidig med at kameraet følger med.
Prøver lige at starte forfra igen Lykkes det ikke går jeg videre til næste spil (-:
VH Daniel
Hej Daniel
Siger den fejl i console? Så må du gerne skrive hvad den siger eller sende et screenshot :) Så kan jeg bedre hjælpe.
Har du sat pickup på det rigtige object?
tak for alt
ikke noget alligevel men tak
hvor kan man få monodevelop og hvordan får man monodevelop op på skærmen i 2019
Hej Olivier, i de nyeste version af Unity (fra 2018.3) blev Monodevelop udfaset og nu bruger man Microsoft Visual Code. Programmet ligner Monodevelop, så det gør ikke noget at bruge det ene frem for det andet. Når du installerer Unity vil den spørger om den skal installere Visual Code med, medmindre at du selv fravælger det. Når du åbner et script vil det så være den som åbner.
Hilsen
Code