j'ai entendu que les jeux videos de nos jours, sont toujours concu en c
et non en c++,
ma quesiton est POUrquoi??, le c++ a quand meme beaucoup plus d'avantage
que le c non
merci
Ps: ceci n'est pas un troll; je suis en premiere année informatique, et
je commence a apprendre le c++, et les differences du c, et etant
passionné de jeu (c'est la dedans que j'aimerais travailler) je me
posait cette question
Dans les jeux, il y pas mal de maths, et notamment d'opérations sur les vecteurs, dans un moteur 3D par exemple...
Vrai, et pas QUE dans le moteur 3D...
Mais c'est vrai que ce ne sont pas des maths *très haut niveau*, comme Gaby en a fait ;-)
Tros gros, passeras pas (tient, si, il passe !) Alors, là, s'il est vrai que l'Algèbre Lineaire, qui constitue un bon 80% des besoins en maths d'un programmeur de jeu est de loin beaucoup plus facile que la maîtrises des espaces de Minkowski (par ex.), il ne faut pas oublier les (assez récentes) additions que sont par exemple : les systèmes d'équation sur-contraints (ex : physiques des chocs), l'application du calcul des Harmoniques Sphériques (d'habitude, ca sert au calcul des orbitales electroniques, mais on s'en sert pour les simulations d'eclairages globales, dans Half Life 2 par ex.), la modélisation booléene (ou CSG, loin d'être triviale pour être temps réel), les automates à logique floue ou les réseaux de neurones ou les algo biologiques, etc. (mon but n'est pas d'etaler ma confiture ;-> mais bien de montrer que les maths dans un jeu ne se résument _plus_ à matrice*vecteur...)
T'as intérêt à aimer les maths :-)
Pourquoi ?
Dans les jeux, il y pas mal de maths, et notamment d'opérations sur les
vecteurs, dans un moteur 3D par exemple...
Vrai, et pas QUE dans le moteur 3D...
Mais c'est vrai que ce ne sont
pas des maths *très haut niveau*, comme Gaby en a fait ;-)
Tros gros, passeras pas
(tient, si, il passe !)
Alors, là, s'il est vrai que l'Algèbre Lineaire, qui constitue un bon 80% des besoins en
maths d'un programmeur de jeu est de loin beaucoup plus facile que la maîtrises des
espaces de Minkowski (par ex.), il ne faut pas oublier les (assez récentes) additions que
sont par exemple : les systèmes d'équation sur-contraints (ex : physiques des chocs),
l'application du calcul des Harmoniques Sphériques (d'habitude, ca sert au calcul des
orbitales electroniques, mais on s'en sert pour les simulations d'eclairages globales,
dans Half Life 2 par ex.), la modélisation booléene (ou CSG, loin d'être triviale pour
être temps réel), les automates à logique floue ou les réseaux de neurones ou les algo
biologiques, etc. (mon but n'est pas d'etaler ma confiture ;-> mais bien de montrer que
les maths dans un jeu ne se résument _plus_ à matrice*vecteur...)
Dans les jeux, il y pas mal de maths, et notamment d'opérations sur les vecteurs, dans un moteur 3D par exemple...
Vrai, et pas QUE dans le moteur 3D...
Mais c'est vrai que ce ne sont pas des maths *très haut niveau*, comme Gaby en a fait ;-)
Tros gros, passeras pas (tient, si, il passe !) Alors, là, s'il est vrai que l'Algèbre Lineaire, qui constitue un bon 80% des besoins en maths d'un programmeur de jeu est de loin beaucoup plus facile que la maîtrises des espaces de Minkowski (par ex.), il ne faut pas oublier les (assez récentes) additions que sont par exemple : les systèmes d'équation sur-contraints (ex : physiques des chocs), l'application du calcul des Harmoniques Sphériques (d'habitude, ca sert au calcul des orbitales electroniques, mais on s'en sert pour les simulations d'eclairages globales, dans Half Life 2 par ex.), la modélisation booléene (ou CSG, loin d'être triviale pour être temps réel), les automates à logique floue ou les réseaux de neurones ou les algo biologiques, etc. (mon but n'est pas d'etaler ma confiture ;-> mais bien de montrer que les maths dans un jeu ne se résument _plus_ à matrice*vecteur...)
Marc Boyer
ricky wrote:
toutefois, dans ce cadre, t si ta recherche est la performance d'affichage, les routines internes sont plutot ecrites en c, lie a de l'assembleur pour les plus petites routines les plus demandeurs...
Hum ? Des références ? Une argumentation ? Je ne vois pas bien pourquoi le C serait plus rapide que le C++ à fonctionnalités équivalentes.
Marc Boyer -- Lying for having sex or lying for making war? Trust US presidents :-(
ricky wrote:
toutefois, dans ce cadre, t si ta recherche est la performance
d'affichage, les routines internes sont plutot ecrites en c, lie a de
l'assembleur pour les plus petites routines les plus demandeurs...
Hum ? Des références ? Une argumentation ? Je ne vois pas
bien pourquoi le C serait plus rapide que le C++ à fonctionnalités
équivalentes.
Marc Boyer
--
Lying for having sex or lying for making war? Trust US presidents :-(
toutefois, dans ce cadre, t si ta recherche est la performance d'affichage, les routines internes sont plutot ecrites en c, lie a de l'assembleur pour les plus petites routines les plus demandeurs...
Hum ? Des références ? Une argumentation ? Je ne vois pas bien pourquoi le C serait plus rapide que le C++ à fonctionnalités équivalentes.
Marc Boyer -- Lying for having sex or lying for making war? Trust US presidents :-(
antrax
amerio wrote:
T'as intérêt à aimer les maths :-)
Pourquoi ?
Dans les jeux, il y pas mal de maths, et notamment d'opérations sur les vecteurs, dans un moteur 3D par exemple...
Vrai, et pas QUE dans le moteur 3D...
Mais c'est vrai que ce ne sont pas des maths *très haut niveau*, comme Gaby en a fait ;-)
Tros gros, passeras pas (tient, si, il passe !) Alors, là, s'il est vrai que l'Algèbre Lineaire, qui constitue un bon 80% des besoins en maths d'un programmeur de jeu est de loin beaucoup plus facile que la maîtrises des espaces de Minkowski (par ex.), il ne faut pas oublier les (assez récentes) additions que sont par exemple : les systèmes d'équation sur-contraints (ex : physiques des chocs), l'application du calcul des Harmoniques Sphériques (d'habitude, ca sert au calcul des orbitales electroniques, mais on s'en sert pour les simulations d'eclairages globales, dans Half Life 2 par ex.), la modélisation booléene (ou CSG, loin d'être triviale pour être temps réel), les automates à logique floue ou les réseaux de neurones ou les algo biologiques, etc. (mon but n'est pas d'etaler ma confiture ;-> mais bien de montrer que les maths dans un jeu ne se résument _plus_ à matrice*vecteur...)
Le département R&D des sociétés de jeux vidéos n'existe pas pour rien. Mais en générale, c'est plutôt la recherche public qui avance dans ce domaine, et le privée qui l'utilise tout fait, en version simplifié, utilisable en temps réel.
amerio wrote:
T'as intérêt à aimer les maths :-)
Pourquoi ?
Dans les jeux, il y pas mal de maths, et notamment d'opérations sur les
vecteurs, dans un moteur 3D par exemple...
Vrai, et pas QUE dans le moteur 3D...
Mais c'est vrai que ce ne sont
pas des maths *très haut niveau*, comme Gaby en a fait ;-)
Tros gros, passeras pas
(tient, si, il passe !)
Alors, là, s'il est vrai que l'Algèbre Lineaire, qui constitue un bon 80% des besoins en
maths d'un programmeur de jeu est de loin beaucoup plus facile que la maîtrises des
espaces de Minkowski (par ex.), il ne faut pas oublier les (assez récentes) additions que
sont par exemple : les systèmes d'équation sur-contraints (ex : physiques des chocs),
l'application du calcul des Harmoniques Sphériques (d'habitude, ca sert au calcul des
orbitales electroniques, mais on s'en sert pour les simulations d'eclairages globales,
dans Half Life 2 par ex.), la modélisation booléene (ou CSG, loin d'être triviale pour
être temps réel), les automates à logique floue ou les réseaux de neurones ou les algo
biologiques, etc. (mon but n'est pas d'etaler ma confiture ;-> mais bien de montrer que
les maths dans un jeu ne se résument _plus_ à matrice*vecteur...)
Le département R&D des sociétés de jeux vidéos n'existe pas pour rien.
Mais en générale, c'est plutôt la recherche public qui avance dans ce
domaine, et le privée qui l'utilise tout fait, en version simplifié,
utilisable en temps réel.
Dans les jeux, il y pas mal de maths, et notamment d'opérations sur les vecteurs, dans un moteur 3D par exemple...
Vrai, et pas QUE dans le moteur 3D...
Mais c'est vrai que ce ne sont pas des maths *très haut niveau*, comme Gaby en a fait ;-)
Tros gros, passeras pas (tient, si, il passe !) Alors, là, s'il est vrai que l'Algèbre Lineaire, qui constitue un bon 80% des besoins en maths d'un programmeur de jeu est de loin beaucoup plus facile que la maîtrises des espaces de Minkowski (par ex.), il ne faut pas oublier les (assez récentes) additions que sont par exemple : les systèmes d'équation sur-contraints (ex : physiques des chocs), l'application du calcul des Harmoniques Sphériques (d'habitude, ca sert au calcul des orbitales electroniques, mais on s'en sert pour les simulations d'eclairages globales, dans Half Life 2 par ex.), la modélisation booléene (ou CSG, loin d'être triviale pour être temps réel), les automates à logique floue ou les réseaux de neurones ou les algo biologiques, etc. (mon but n'est pas d'etaler ma confiture ;-> mais bien de montrer que les maths dans un jeu ne se résument _plus_ à matrice*vecteur...)
Le département R&D des sociétés de jeux vidéos n'existe pas pour rien. Mais en générale, c'est plutôt la recherche public qui avance dans ce domaine, et le privée qui l'utilise tout fait, en version simplifié, utilisable en temps réel.
antrax
Fabien LE LEZ wrote:
On Sun, 5 Oct 2003 23:28:52 +0200, "Arnaud Debaene" wrote:
... Mais tous les jeux qui vont sortir seront en C++ (qui n'est que du C amélioré objet).
Trop gros, passeras pas ....
Le drame, c'est que c'est représentatif de l'avis de beaucoup de "programmeurs" :-/
Article dans le GameDeveloppeur de ce moi ci, la version template des vertex data fait un executable plus gros. Tout comme en activant le rtti vous allez avoir votre executable grossire d'une facon importante.
Fabien LE LEZ wrote:
On Sun, 5 Oct 2003 23:28:52 +0200, "Arnaud Debaene"
<adebaene@club-internet.fr> wrote:
... Mais tous les jeux qui vont sortir seront en C++ (qui n'est que
du C amélioré objet).
Trop gros, passeras pas ....
Le drame, c'est que c'est représentatif de l'avis de beaucoup de
"programmeurs" :-/
Article dans le GameDeveloppeur de ce moi ci, la version template des
vertex data fait un executable plus gros. Tout comme en activant le rtti
vous allez avoir votre executable grossire d'une facon importante.
On Sun, 5 Oct 2003 23:28:52 +0200, "Arnaud Debaene" wrote:
... Mais tous les jeux qui vont sortir seront en C++ (qui n'est que du C amélioré objet).
Trop gros, passeras pas ....
Le drame, c'est que c'est représentatif de l'avis de beaucoup de "programmeurs" :-/
Article dans le GameDeveloppeur de ce moi ci, la version template des vertex data fait un executable plus gros. Tout comme en activant le rtti vous allez avoir votre executable grossire d'une facon importante.
Mickael Pointier
La raison est simple c'est qu'on peut programmer un jeu entièrement en C si il y a 1 ou deux programmeurs (comme à une certaine époque), mais pour des projets sur 18 mois minimum à 4 ou 5 programmeurs (voir 10), le C++ est tout simplement indispensable pour organiser le travail. Il n'existe quasiement plus d'équipe de 10 personnes pour faire un jeu, donc l'avenir est entièrement au c++ ...
Aucun rapport.
Personnelement je ne vois pas plus de problème à faire un jeu intégralement en C ou en C++, du moins au niveau de l'organisation du travail.
Dans tous les cas si l'organisation est bordélique tu aurais des problèmes.
Alors oui on tend à constater que sur les projets de taille conséquente écrits en C ca commence à ressembler furieusement à de l'orienté objet...
Mike
La raison est simple c'est qu'on peut programmer un jeu entièrement
en C si il y a 1 ou deux programmeurs (comme à une certaine époque),
mais
pour des projets sur 18 mois minimum à 4 ou 5 programmeurs (voir 10),
le C++ est tout simplement indispensable pour organiser le travail.
Il n'existe quasiement plus d'équipe de 10 personnes pour faire un
jeu, donc l'avenir est entièrement au c++ ...
Aucun rapport.
Personnelement je ne vois pas plus de problème à faire un jeu
intégralement en C ou en C++, du moins au niveau de l'organisation du
travail.
Dans tous les cas si l'organisation est bordélique tu aurais des
problèmes.
Alors oui on tend à constater que sur les projets de taille conséquente
écrits en C ca commence à ressembler furieusement à de l'orienté
objet...
La raison est simple c'est qu'on peut programmer un jeu entièrement en C si il y a 1 ou deux programmeurs (comme à une certaine époque), mais pour des projets sur 18 mois minimum à 4 ou 5 programmeurs (voir 10), le C++ est tout simplement indispensable pour organiser le travail. Il n'existe quasiement plus d'équipe de 10 personnes pour faire un jeu, donc l'avenir est entièrement au c++ ...
Aucun rapport.
Personnelement je ne vois pas plus de problème à faire un jeu intégralement en C ou en C++, du moins au niveau de l'organisation du travail.
Dans tous les cas si l'organisation est bordélique tu aurais des problèmes.
Alors oui on tend à constater que sur les projets de taille conséquente écrits en C ca commence à ressembler furieusement à de l'orienté objet...
Mike
Gourgouilloult
wrote:
Fabien LE LEZ wrote:
Le drame, c'est que c'est représentatif de l'avis de beaucoup de "programmeurs" :-/
Article dans le GameDeveloppeur de ce moi ci, la version template des vertex data fait un executable plus gros. Tout comme en activant le rtti vous allez avoir votre executable grossire d'une facon importante.
Je ne connais pas bien ce mag, mais ils font souvent dans le troll comme ça ? Parce que c'est un peu gros, tout ça... Qui a écrit l'article, en particulier ?
Gourgou
antrax@ifrance.Com wrote:
Fabien LE LEZ wrote:
Le drame, c'est que c'est représentatif de l'avis de beaucoup de
"programmeurs" :-/
Article dans le GameDeveloppeur de ce moi ci, la version template des
vertex data fait un executable plus gros. Tout comme en activant le rtti
vous allez avoir votre executable grossire d'une facon importante.
Je ne connais pas bien ce mag, mais ils font souvent dans le troll comme
ça ? Parce que c'est un peu gros, tout ça... Qui a écrit l'article, en
particulier ?
Le drame, c'est que c'est représentatif de l'avis de beaucoup de "programmeurs" :-/
Article dans le GameDeveloppeur de ce moi ci, la version template des vertex data fait un executable plus gros. Tout comme en activant le rtti vous allez avoir votre executable grossire d'une facon importante.
Je ne connais pas bien ce mag, mais ils font souvent dans le troll comme ça ? Parce que c'est un peu gros, tout ça... Qui a écrit l'article, en particulier ?
Gourgou
Marc Boyer
wrote:
Article dans le GameDeveloppeur de ce moi ci, la version template des vertex data fait un executable plus gros.
Par rapport à quoi ? A un ensemble de macros qui caste tout en void* ? Oui, ça semble raisonnable en effet d'avoir un exécutable plus gros. Ceci dit, si le but c'est de minimiser le code, on peut imaginer une bibliothèque template qui soit juste une enveloppe à des systèmes à base de void*.
Tout comme en activant le rtti vous allez avoir votre executable grossire d'une facon importante.
Oui, mais pourquoi activer le rtti ?
Marc Boyer -- Lying for having sex or lying for making war? Trust US presidents :-(
antrax@ifrance.Com wrote:
Article dans le GameDeveloppeur de ce moi ci, la version template des
vertex data fait un executable plus gros.
Par rapport à quoi ? A un ensemble de macros qui caste
tout en void* ?
Oui, ça semble raisonnable en effet d'avoir un exécutable
plus gros. Ceci dit, si le but c'est de minimiser le code,
on peut imaginer une bibliothèque template qui soit
juste une enveloppe à des systèmes à base de void*.
Tout comme en activant le rtti
vous allez avoir votre executable grossire d'une facon importante.
Oui, mais pourquoi activer le rtti ?
Marc Boyer
--
Lying for having sex or lying for making war? Trust US presidents :-(
Article dans le GameDeveloppeur de ce moi ci, la version template des vertex data fait un executable plus gros.
Par rapport à quoi ? A un ensemble de macros qui caste tout en void* ? Oui, ça semble raisonnable en effet d'avoir un exécutable plus gros. Ceci dit, si le but c'est de minimiser le code, on peut imaginer une bibliothèque template qui soit juste une enveloppe à des systèmes à base de void*.
Tout comme en activant le rtti vous allez avoir votre executable grossire d'une facon importante.
Oui, mais pourquoi activer le rtti ?
Marc Boyer -- Lying for having sex or lying for making war? Trust US presidents :-(
Fabien LE LEZ
On Mon, 06 Oct 2003 11:06:08 +0200, wrote:
Mais en générale, c'est plutôt la recherche public qui avance dans ce domaine, et le privée qui l'utilise tout fait, en version simplifié, utilisable en temps réel.
Yep, mais il faut quand même comprendre les résultats de la recherche publique pour les appliquer...
On Mon, 06 Oct 2003 11:06:08 +0200, antrax@ifrance.Com wrote:
Mais en générale, c'est plutôt la recherche public qui avance dans ce
domaine, et le privée qui l'utilise tout fait, en version simplifié,
utilisable en temps réel.
Yep, mais il faut quand même comprendre les résultats de la recherche
publique pour les appliquer...
Mais en générale, c'est plutôt la recherche public qui avance dans ce domaine, et le privée qui l'utilise tout fait, en version simplifié, utilisable en temps réel.
Yep, mais il faut quand même comprendre les résultats de la recherche publique pour les appliquer...
j'ai entendu que les jeux videos de nos jours, sont toujours concu en c et non en c++, ma quesiton est POUrquoi??, le c++ a quand meme beaucoup plus d'avantage que le c non
merci
Ps: ceci n'est pas un troll; je suis en premiere année informatique, et je commence a apprendre le c++, et les differences du c, et etant passionné de jeu (c'est la dedans que j'aimerais travailler) je me posait cette question
merci
a++++
Le C est plutôt utilisé sur PS2. Les moteurs les plus performants sont écrits en C, c'est un fait.
elekis wrote:
bonjour,
j'ai entendu que les jeux videos de nos jours, sont toujours concu en
c et non en c++,
ma quesiton est POUrquoi??, le c++ a quand meme beaucoup plus
d'avantage que le c non
merci
Ps: ceci n'est pas un troll; je suis en premiere année informatique,
et je commence a apprendre le c++, et les differences du c, et etant
passionné de jeu (c'est la dedans que j'aimerais travailler) je me
posait cette question
merci
a++++
Le C est plutôt utilisé sur PS2.
Les moteurs les plus performants sont écrits en C, c'est un fait.
j'ai entendu que les jeux videos de nos jours, sont toujours concu en c et non en c++, ma quesiton est POUrquoi??, le c++ a quand meme beaucoup plus d'avantage que le c non
merci
Ps: ceci n'est pas un troll; je suis en premiere année informatique, et je commence a apprendre le c++, et les differences du c, et etant passionné de jeu (c'est la dedans que j'aimerais travailler) je me posait cette question
merci
a++++
Le C est plutôt utilisé sur PS2. Les moteurs les plus performants sont écrits en C, c'est un fait.
Richard Delorme
ricky wrote:
toutefois, dans ce cadre, t si ta recherche est la performance d'affichage, les routines internes sont plutot ecrites en c, lie a de l'assembleur pour les plus petites routines les plus demandeurs...
Hum ? Des références ? Une argumentation ? Je ne vois pas bien pourquoi le C serait plus rapide que le C++ à fonctionnalités équivalentes.
Bien sûr un programme C compatible C++ fonctionne à la même vitesse que le compilateur soit en mode C ou C++. Néanmoins les approches offertes par le C++, comme la programmation objet, générique,... peuvent conduire à un programme légèrement plus lent, ou consommant plus de mémoire, qu'un programme écrit uniquement dans le style programmation structurée du C. En plus, le système est souvent (Unix + X11, Windows, openGL, ...) écrit en C à la base, et l'utilisation du C++ invite à écrire une surcouche objet dessus qui introduit un peu de lenteur. Néanmoins, les différences sont, à ma connaissance, toujours minimes, de quelques pourcents, et la recherche des performances ne justifie pas l'utilisation du C à la place du C++. Rien à voir avec Java, dont les exemples d'articles en vantant les performances abondent, mais qui, dans les applications critiques, montre des performances assez ridicules (5 à 20 fois plus lent).
-- Richard
ricky wrote:
toutefois, dans ce cadre, t si ta recherche est la performance
d'affichage, les routines internes sont plutot ecrites en c, lie a de
l'assembleur pour les plus petites routines les plus demandeurs...
Hum ? Des références ? Une argumentation ? Je ne vois pas
bien pourquoi le C serait plus rapide que le C++ à fonctionnalités
équivalentes.
Bien sûr un programme C compatible C++ fonctionne à la même vitesse que le
compilateur soit en mode C ou C++. Néanmoins les approches offertes par le
C++, comme la programmation objet, générique,... peuvent conduire à un
programme légèrement plus lent, ou consommant plus de mémoire, qu'un
programme écrit uniquement dans le style programmation structurée du C. En
plus, le système est souvent (Unix + X11, Windows, openGL, ...) écrit en C
à la base, et l'utilisation du C++ invite à écrire une surcouche objet
dessus qui introduit un peu de lenteur.
Néanmoins, les différences sont, à ma connaissance, toujours minimes, de
quelques pourcents, et la recherche des performances ne justifie pas
l'utilisation du C à la place du C++. Rien à voir avec Java, dont les
exemples d'articles en vantant les performances abondent, mais qui, dans
les applications critiques, montre des performances assez ridicules (5 à 20
fois plus lent).
toutefois, dans ce cadre, t si ta recherche est la performance d'affichage, les routines internes sont plutot ecrites en c, lie a de l'assembleur pour les plus petites routines les plus demandeurs...
Hum ? Des références ? Une argumentation ? Je ne vois pas bien pourquoi le C serait plus rapide que le C++ à fonctionnalités équivalentes.
Bien sûr un programme C compatible C++ fonctionne à la même vitesse que le compilateur soit en mode C ou C++. Néanmoins les approches offertes par le C++, comme la programmation objet, générique,... peuvent conduire à un programme légèrement plus lent, ou consommant plus de mémoire, qu'un programme écrit uniquement dans le style programmation structurée du C. En plus, le système est souvent (Unix + X11, Windows, openGL, ...) écrit en C à la base, et l'utilisation du C++ invite à écrire une surcouche objet dessus qui introduit un peu de lenteur. Néanmoins, les différences sont, à ma connaissance, toujours minimes, de quelques pourcents, et la recherche des performances ne justifie pas l'utilisation du C à la place du C++. Rien à voir avec Java, dont les exemples d'articles en vantant les performances abondent, mais qui, dans les applications critiques, montre des performances assez ridicules (5 à 20 fois plus lent).