Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
Avatar de l’utilisateur
Saeko
Messages : 79
Inscription : 17 Mars 2013 12:02
Localisation : Inconnu

Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par Saeko » 21 Jan 2021 09:48

Bonjour,

Avec la conjoncture actuelle j'ai beaucoup de temps disponibles, je me suis ces dernières semaines amusé à suivre quelques tutos par-ci par là pour avoir un semblant de résultat sur unity3d.

Mais voilà après avoir suivi une dizaine de tutoriel qui m'a foi donne de super résultat, dès que l'envie de faire quelque chose de moi-même se présente, je me heurte à un mur, tous les tutos suivis jusqu'à lors ne m'ont rien appris. Sans nul doute, car il faut commencer par la base, la forme du code, sa grammaire etc...

Désireux de réellement apprendre le c# uniquement dans le but de l'utiliser pour unity 3d, je vous demande donc s'il est possible de l'apprendre à travers l'utilisation de unity 3d ? ou faut il apprendre le c# pure et dure et ensuite l'appliquer sur unity3d ?

J'ai farfouillé sur le net et je suis tombé sur des livres, des cours en ligne etc... Dans la vaste multitude de choix certains sont vieux de 10 ans, d'autre 5, coûte une somme assez conséquente ou moindre, j'en demande donc a votre expérience afin d'être guidé vers quelque chose qui répondra au mieux à mes attentes, un ou des cours complets, récent qui commence par la base des bases du c# et nous permet de l'appliquer comme par exemple à travers d'exercices sur unity3d et me permettrais d'ici quelques mois d'avoir un niveau intermédiaire en c# et son application sur unity (Les cours en anglais sont ok!).

J'ai un budget aux alentours de 50€ que je peux potentiellement doubler voir un peu plus si cela est justifié. Je prends du gratuit aussi si vous avez quelque chose de qualité de dispo, au moins pour une mise en bouche :hehe:
Hier, c’est déjà de l’histoire. Demain est un mystère. Mais aujourd’hui est un cadeau, c'est pourquoi nous le nommons le Présent.

Avatar de l’utilisateur
jmhoubre
Messages : 856
Inscription : 05 Oct 2019 22:05

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par jmhoubre » 21 Jan 2021 10:35

Bonjour,

va déjà voir ce sujet, qui rassemble des pistes intéressantes.

Si tu débutes, vois le cours C# de TUTO UNITY FR, qui est vraiment bien.

Garde tes 50 euros, il y a beaucoup de liens de qualité gratuits, surtout si tu n'es pas gêné par l'anglais...

Avatar de l’utilisateur
DevAmat
Messages : 435
Inscription : 23 Nov 2016 11:50

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par DevAmat » 21 Jan 2021 11:24

Salut,

C'est super de se lancer dans ce genre d'apprentissage c'est très gratifiant.

Je ne te conseille pas trop de te donner un objectif de temps. Mais plutôt d'y aller pas à pas.
Attaquer les tutos et les exemples (Unity learn) est un excellent début. Et c'est normal de se prendre des murs lorsque tu veux faire des choses par toi même. Il faut te fixer des objectifs raisonnables (c'est pas simple) pour franchir ces obstacles les uns après les autres.

Tu as le langage à apprendre mais également le moteur de jeu à appréhender.
Commence par de touts petits projets très courts avec une ou deux fonctionnalités.
Si tu commence trop grand trop complexe tu risques de te décourager.

Il y a énormément de ressources gratuites sur le net (tuto, scripts, assets etc.), et le forum Unity3D-France ;-) .

Avatar de l’utilisateur
Saeko
Messages : 79
Inscription : 17 Mars 2013 12:02
Localisation : Inconnu

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par Saeko » 21 Jan 2021 11:28

Salut!

Merci pour ta réponse, en ce qui concerne TUTO UNITY FR je les ai déjà englouti par le passé, ça remonte a 2019 apparemment Image

Je vais très certainement y repasser un coup car c'était très bien expliqué, mais de souvenir ça ne m'a strictement servi a rien car :

De 1 il n'y avait pas de mise en pratique.

Et de 2 il me semble, aucune explication de la "grammaire" d'un code pourquoi on met un point la, pourquoi une parenthèse là, un espace ici mais pas là etc...

Au final après une dizaine de vidéo on(je?) reste incapable de former une simple ligne de code par soit même, ou alors je m'y prend mal!

Il me faudrait vraiment je pense une mise en pratique à côté, a la manière d'exercice d'un cours d'école.

J'ai vraiment du gober des centaines de tuto en les reproduisant ensuite sur unity 3d sur l'année 2019 et je souviens que ça ne m'avait strictement servit à rien hormis apprendre le fonctionnement et l'ergonomie du logiciel unity. Je vais feuilleter un peu la chaine car il semble y avoir de nouvelles vidéos, mais je doute que ça soit ce dont j'ai réellement besoin pour apprendre le c#

DevAmat a écrit :
21 Jan 2021 11:24

Attaquer les tutos et les exemples (Unity learn) est un excellent début.
Je vais aller y jeter un coup d'oeil, je ne sais pas pourquoi je n'ai jamais pensé aux tutos officiels de unity3d :0
DevAmat a écrit :
21 Jan 2021 11:24
Il faut te fixer des objectifs raisonnables (c'est pas simple) pour franchir ces obstacles les uns après les autres.

Tu as le langage à apprendre mais également le moteur de jeu à appréhender.
Commence par de touts petits projets très courts avec une ou deux fonctionnalités.
Si tu commence trop grand trop complexe tu risques de te décourager.
Je ne vois absolument pas de quoi tu parles :mrgreen:
Hier, c’est déjà de l’histoire. Demain est un mystère. Mais aujourd’hui est un cadeau, c'est pourquoi nous le nommons le Présent.

Avatar de l’utilisateur
DevAmat
Messages : 435
Inscription : 23 Nov 2016 11:50

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par DevAmat » 21 Jan 2021 11:52

Il y a ce lien officiel également:

https://unity3d.com/fr/learning-c-sharp ... -beginners

Ils mettent en place un parcours pour aider à l'apprentissage du moteur. C'est très intéressant (et pas que pour les débutants!).

Avatar de l’utilisateur
jmhoubre
Messages : 856
Inscription : 05 Oct 2019 22:05

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par jmhoubre » 21 Jan 2021 12:50

Oui, c'est exact, les vidéos que j'ai indiquées sont du pur cours C#. A mi-chemin entre les cours C# et les cours Unity, je pense que tu pourrais trouver ton bonheur dans une série de la chaine Tuto Unity Fr, Programmer un jeu en 2D. C'est plus orienté pratique, avec des rappels fréquents de théorie. La série est assez longue pour être complète. Ne t'arrête pas au côté 2D, les différences entre la partie 2D et la partie 3D ne sont pas énormes.
aucune explication de la "grammaire" d'un code pourquoi on met un point la, pourquoi une parenthèse là, un espace ici mais pas là
Je n'ai pas le souvenir d'avoir vu ce type de cours sur internet, peut-être que la doc C# de Microsoft te conviendrait : voici la page qui décrit la boucle for.

Unity learn est un excellent site, d'autant plus qu'il est désormais totalement gratuit. Il y a pas mal de tutos sous forme de série ou de parcours.

Pour compléter ce qu'écrit DevAmat, si tu te lances dans un jeu FPS multijoueur en 3D, tu risques de te casser les dents. Voici une méthode que je suis :
  • Reproduire des classiques : Ping Pong, Space Invaders, Snake, Pac Man...
  • Reproduire un mécanisme d'un gros jeu que tu connais bien (sans trop insister sur la partie graphique)
  • Quand un tuto est fini, le modifier : ajout d'un mécanisme de jeu, d'un niveau, ou les améliorer
  • Comprendre les scripts d'Unity. Ils ne sont pas tous parfaits, mais sont généralement intéressants à comprendre : les scripts des Standards Assets, ou ceux des différents minijeux (karting, FPS, ...)

youtpout
Messages : 71
Inscription : 15 Nov 2020 15:54

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par youtpout » 21 Jan 2021 19:31

Hello,

je suis dev c# depuis plus de 10 ans et pas besoin de connaitre C# en profondeur pour faire des jeux sous Unity, surtout que quand tu dev sur Unity t'as l'impression de faire du code sale :lol:

En C# tu as plusieurs ponctuaction qui ont chacun un role :
{} les accolades sont utilisés pour définir le début et la fin d'un bloc de code on l'utilise pour le namespace, la classe, les instructions, les méthodes ...
[] les crochets utilisés pour les tableaux principalement
: les 2 points pour définir de quel classe on hérite ou quel interface on implémente, quand on veut appeler une fonction de base depuis le constructeur ...
; le point virgule indique la fin d'une instruction de code

Les espaces n'ont pas d'importance en C#, dans d'autre langage oui mais pas en c#, les accolades définissent les blocs d'instructions

Avatar de l’utilisateur
Saeko
Messages : 79
Inscription : 17 Mars 2013 12:02
Localisation : Inconnu

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par Saeko » 22 Jan 2021 15:08

jmhoubre a écrit :
21 Jan 2021 12:50
Programmer un jeu en 2D. C'est plus orienté pratique, avec des rappels fréquents de théorie. La série est assez longue pour être complète. Ne t'arrête pas au côté 2D, les différences entre la partie 2D et la partie 3D ne sont pas énormes.
J'en prend note.

Avec unity learn et ce que ma donné DevAmat j'ai de quoi faire!
youtpout a écrit :
21 Jan 2021 19:31
Hello,

je suis dev c# depuis plus de 10 ans et pas besoin de connaitre C# en profondeur pour faire des jeux sous Unity, surtout que quand tu dev sur Unity t'as l'impression de faire du code sale :lol:

En C# tu as plusieurs ponctuaction qui ont chacun un role :
{} les accolades sont utilisés pour définir le début et la fin d'un bloc de code on l'utilise pour le namespace, la classe, les instructions, les méthodes ...
[] les crochets utilisés pour les tableaux principalement
: les 2 points pour définir de quel classe on hérite ou quel interface on implémente, quand on veut appeler une fonction de base depuis le constructeur ...
; le point virgule indique la fin d'une instruction de code

Les espaces n'ont pas d'importance en C#, dans d'autre langage oui mais pas en c#, les accolades définissent les blocs d'instructions
Voila typiquement le genre d'information que j'aimerais trouver dans des cours de c#, je ne vois ce genre d'information nulle part!

Comme dit précédemment j'ai de quoi feuilleter plusieurs semaines/mois ça sera surement quelque part dedans.

Merci pour ces quelques précisions!
Hier, c’est déjà de l’histoire. Demain est un mystère. Mais aujourd’hui est un cadeau, c'est pourquoi nous le nommons le Présent.

youtpout
Messages : 71
Inscription : 15 Nov 2020 15:54

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par youtpout » 22 Jan 2021 16:21

Hello je peux faire un truc plus complet mais ça sera un véritable tuto, si tu veux je peux écrire un tuto autour du C# en quelques heures.

Avatar de l’utilisateur
Saeko
Messages : 79
Inscription : 17 Mars 2013 12:02
Localisation : Inconnu

Re: Je désire apprendre le c# dans l'unique intention de l'utiliser sur unity3d, par ou commencer ?

Message par Saeko » 22 Jan 2021 22:16

Oula ne t'embête surtout pas l'ami!

J'ai pour plusieurs semaines de cours je pense, si vraiment ce n'est pas correct pour l'apprentissage du c# je te ferrais signe! ;)
Hier, c’est déjà de l’histoire. Demain est un mystère. Mais aujourd’hui est un cadeau, c'est pourquoi nous le nommons le Présent.

Répondre

Revenir vers « Scripting »