Unity3D - programmering i c# hvordan kommer jeg igang ?

Tags:    unity3d c#

<< < 12 > >>
Hej

Jeg har for noget tid siden installeret Unity og forsøgt at lære, at lave små scripts i c#, men det går bare ikke særligt godt, da jeg ikke føler at jeg har det fornødne fundament at stå på omkring forståelsen af c# - ja, jeg er vist en rigtig über c# noob !

Jeg har set mange tutorials på YouTube og læst side op og side ned om c# scripting, men lige lidt hjælper det, da jeg ikke kan omsætte det jeg ser og læser til noget brugbart når jeg selv skal igang.

Det er den ene side af problemet, den anden er, at når jeg så endelig kommer igang, så er jeg simpelthen hunderæd for, at lave en fejl, da de kompilerings fejlmeddelelser jeg uvægerligt får, ikke siger mig noget som helst ! - jeg har været rundt og kigge på nettet for, at se om jeg kunne finde ud af hvad fejlmeddelelserne betyder - sådan in plain english, men har ikke været særligt heldig.

Så er der også lige problemet med at forstå eksemplerne i Unitys Scripting Reference, men dem synes jeg er skrevet så kryptisk, at jeg heller ikke rigtig forstår dem - det ville virkelig hjælpe hvis de havde en Scripting reference for Dummies. (at jeg ikke forstår dem skyldes selvfølgelig mit manglende fundament !)

Det jeg dog forstår er:

- Variabler: jeg ved at de holder på værdier og at disse kan manipuleres
- if(){} statements: om noget er true eller false
- for() løkker: tæller op (++) eller ned (--) og hopper ud af lykken når værdien true.

Jeg har være rundt på nettet og søge efter kurser, men der er ikke rigtig noget, som omhandler Unity og C# scripting - ja, jeg har faktisk være så "desperat", at jeg også har kigget efter om det var muligt at hyre en privatlærer, som kunne lave et mini kursus, så jeg ligesom kan få "hul på bylden" !

Så, hvad mener I ? - ska' jeg bare erkende, at C# ikke er for alle og nogle af os simpelthen er for dumme til at lære det eller skal jeg bare klø på og accepterer, at jeg oplever nederlag og frustration 98 gange ud af 100 når jeg prøver at kode i c# !










11 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 11 karma
Sorter efter stemmer Sorter efter dato
Unity 3D er jo et stort kompleks program, hvorfor starter du ikke med at uvikle nogle små programmer i C# istedet? Det vil give nogle flere success oplevelser, så kan du hoppe tilbage til unity3D senere :).

Kør evt. Bucky's tutorials igennem http://thenewboston.org/list.php?cat=15, de plejer at være høj kvalitet.



Du skal ikke give op, hvis du virkelig brænder for det.

Jeg kender ikke så meget til Unity 3D, men fandt denne begynder side, om deres scripting - http://unity3d.com/learn/tutorials/modules/beginner/scripting

Jeg kan dog se at du også kan benytte dig af javascript i stedet for C#, måske du skulle overveje at prøve dette? Jeg siger ikke at det er nemmere, men det kan måske få dig til at få nyt gå på mod.



Hej Henrik

Hvis det er spil du vil programmer, er det forholdsvis nemt med XNA.
Der er mange gode videoer på youtube. :)



Hej

Tak for jeres svar.

Grunden til, at jeg gerne vil lære c# er, at de fleste udviddelser og mods i Unitys Asset Store er skrevet i c#, så man ender alligevel med at skulle lære at bruge c#

Omkring linket til tutorials som @Martin Rohwedder linker til, så har jeg gennemset dem + et hav af andre, men det er jo der hele problemet ligger; jeg har meget svært ved at omsætte og bygge videre på de der tutorials og jeg er ganske sikker på at grunden til dette er, at jeg ikke har et fundament at stå på.

Hvis jeg skulle følge de der scripting tutorials, så ender det bare med en go' gang copy & paste og det lære man ikke meget ved !

Nu er vi mennesker gudskelov så forskellige og det er måde hvorpå vi suger læring til os heldigvis også og jeg har det bedst med undervisning hvor man lige kan række hånden op og få hjælp hvis man sidder fast - jeg ved godt at en stor del bare kan læse en bog og lære på den måde, men det virker altså ikke rigtig for mig - ihvertfald ikke i den indledende indlæringsfase.




Jeg er enig med martin Jensen

Hvis det er fordi du mangler et 'fundament' at stå på, så skal du netop ikke starte ud med at lave ting i unity 3D. Start hellere ud med simple ting i C#, for at få det hele ind under huden. Herefter kan det måske være at du kan finde dit stå sted til Unity 3D.

Desuden er programmering af spil ikke den letteste genre indenfor udvikling, og derfor kræver det god forståelse for det simple teoretiske før man begiver sig ud på dette farvand.

+karma til Martin :D



Unity 3D er jo et stort kompleks program, hvorfor starter du ikke med at uvikle nogle små programmer i C# istedet? Det vil give nogle flere success oplevelser, så kan du hoppe tilbage til unity3D senere :).

Kør evt. Bucky's tutorials igennem http://thenewboston.org/list.php?cat=15, de plejer at være høj kvalitet.


kan så tilføje det ville være en god ide at starte på C# (mono framework) inden Unity, da unity benytter mono, så lære du ikke at bruge noget der ikke er tilgængeligt


men ellers ser jeg intet problem i at stare med i kode i unity, om du skriver hello world i VS eller Unity er et fedt imo..



Hvis du alligevel skal lære C# og hele måden at arbejde og udvikle på med C# hvorfor så ikke starte med at lave nogle mindre programmer selv?
Du kan eventuelt starte med en tutorial som kan få dig startet, og når den er færdig kan du tænke hvad kan vi nu udvide den her med?
Noget beregning? Noget mere man skal kunne gøre? Noget tæt på det eksisterende men som er tæt på?
Hvis du udvider med nye funktioner så lærer du ved at du selv skal bygge noget på et fundament som er bygget og derfor gør det nemmere.
Når du så har begyndt at det hænger fast så gerne lav afarter af noget funktionalitet - skal den lave noget grønt i stedet for rødt, eller skrive noget andet ud til dig fordi du trykker på knappen anden gang?
Oftest ender man med to metoder der er meget ens med meget få forskelle (lidt anden tekst, eller farve eller lign), og det er her du begynder at kunne lære at optimere - hvilket lynhurtigt bliver meget vigtigt og meget givtigt!
At du kan flytte din kode ud i en anden metode som kan håndtere begge scenarier og så have hver en metode der giver det rigtige indput som sørger for i sidste ende at få 2 forskellige resultater.

Om det er en webside, en commando promt, et winforms program eller hvad du får lavet er ikke så vigtigt - men mere at du får lavet noget som du begynder at kunne arbejde videre på.

P.S. Der er ingen der er for dumme til at lære C#! Men det drejer sig om at tage en mindre bid der er overkommenlig som man kan forstå i sig selv uden at det at løse opgaven skaber 4 nye spørgsmål omkring andre detaljer for at du kan løse den.
Så nej! Du er absolut ikke for dum, men tag noget der er nemmere og mere simpelt at begynde med.
Hvis du skal lære at være professionelt racerkører så starter du nok stadig med at få 2-3 gear at køre i og en slalom bane som du skal køre meget længe på meget forsigtigt, langsomt, og en bid af gangen.
De kaster dig ikke ud på en stor professionel bane der tager 20 minutter at komme rundt på med farlige kurver, hårnåle sving, på slicks, med 24 gear, og 28 knapper på rattet der kan alt muligt imens løbslederen råber ind i dit øre fra høretelefonen i din hjelm.
Der tager man lidt af gangen som du lærer at meste godt før du forstsætter til næste og mere udfordrende del (hvor du kan bruge det du lige har lært) så du step by step udvikler dig og bliver bedre.



Indlæg senest redigeret d. 30.05.2013 13:12 af Bruger #17215
Hej

Takker for jeres indlæg.

@Kenneth - jeg kigge lige på det link du gav, så et par tuts og endte med, at føje den til favoritter, da den og indeholder andre interessante videoer.

Omkring udvikling i monodevelop, så må jeg sige at hvis jeg vinder i lotto, så ryger monodevelop som det første (i hvertfald den version der følger med Unity), jeg har også læst at prof udviklerne foretrækker at bruge Visual Studio - dog skal man have Premium version af VS før man kan debugge med den i Unity (tydeligvis en "fejl" fra Microsofts side!)

@csharper - jeg er enig i, at man skal starte i det små og det har jeg også gjort og forsøgt at udvidde det mere efterfølgende, men så når man til et punkt hvor alle fejlende opstår og her er Unity meget lidt meddelsom eller rettere sagt den skriver i et sprog, som er aldeles uforståligt for en nybegynder (en meget erfaren bruger vil måske nemt kunne tyde fejlmeddelserne), hvilket jeg også har skrevet og gjort dem opmærksom på, men det er disse fejl som man uvægerlig får og som kan være svære at løse, og når man så sidder der alene og prøver og prøver og tingende så stadigvæk ikke vil, så er det tydeligt for mig, at jeg bruger en forkert indlæringsmetode.




@Kenneth - jeg kigge lige på det link du gav, så et par tuts og endte med, at føje den til favoritter, da den og indeholder andre interessante videoer.

Omkring udvikling i monodevelop, så må jeg sige at hvis jeg vinder i lotto, så ryger monodevelop som det første (i hvertfald den version der følger med Unity), jeg har også læst at prof udviklerne foretrækker at bruge Visual Studio - dog skal man have Premium version af VS før man kan debugge med den i Unity (tydeligvis en "fejl" fra Microsofts side!)


nu var det godt nok Martin's link

og jeg snakker om mono framework (http://www.mono-project.com/Main_Page) ikke den editor som unity har med (http://monodevelop.com/Main_Page)




@Kenneth - jeg kigge lige på det link du gav, så et par tuts og endte med, at føje den til favoritter, da den og indeholder andre interessante videoer.

Omkring udvikling i monodevelop, så må jeg sige at hvis jeg vinder i lotto, så ryger monodevelop som det første (i hvertfald den version der følger med Unity), jeg har også læst at prof udviklerne foretrækker at bruge Visual Studio - dog skal man have Premium version af VS før man kan debugge med den i Unity (tydeligvis en "fejl" fra Microsofts side!)


nu var det godt nok Martin's link

og jeg snakker om mono framework (http://www.mono-project.com/Main_Page) ikke den editor som unity har med (http://monodevelop.com/Main_Page)


UPS !

Nå, men så må jeg vist hellere sige tak til @Martin for det gode link.

Jeg skal da ærligt tilstå, at jeg ikke kendte til mono projet, men mono develop.com kender jeg godt - Unitys version af monodevelop er... det kan jeg faktisk ikke huske ! - men den er temmelig gammel, hvilket også har givet anledning til kritik i deres forum, og så jeg har forstået det, så kan man ikke sådan lige uden problemer bare opdatere til den nyeste version, da den version, som følger med Unity er "skræddersyet" til brug i unity - selv ville jeg som tidligere skrevet ønske at man kunne bruge Visual Studio (express), men dette kan desværre ikke lade sig gøre, da man ikke kan debugge - der findes dog en løsning, som hedder UnityVS: http://unityvs.com/ - men de skriver i deres FAQ, at grunden til at den ikke kan køre med Visual Studion Express er at VS express ikke understøtter plugins.




<< < 12 > >>
t