Explications(ENG) comment le moteur 3D de toy story MD a été codé
+3
Tryphon
tetsuro
philip
7 participants
Page 2 sur 2
Page 2 sur 2 • 1, 2
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
upsilandre a écrit:Oui toi tu parle d'impressionner les programmeurs.
Mais si tu veux convaincre des joueurs ca sera bien plus convaincant et ca fera beaucoup moins tache dans le catalogue sur des machines qui sont justement deja en galère pour faire un simple scrolling ou bouger un sprite mais qui par contre sont plus a l'aise pour du raycasting. Y a moyen de séduire des joueurs (du coup ca peut etre gratifiant) alors qu'avec du raycasting sur NES ou SNES aucun joueur n'en veut comparé au reste du catalogue y a un gouffre visuel. C'est juste un défi de programmation personnel (ce qui est bien aussi mais c'est un autre delire).
L'attrait de la 3D au début c'était aussi un peu cette (fausse impression de) liberté d'exploration... Dans Toy Story, il faut admettre que ça a été très bien réalisé, visuellement ce n'est pas moche, c'est fluide, ça donne une ambiance un peu oppressante de déambuler dans ce labyrinthe un peu sombre. Ils n'ont pas fait trop durer le moment non plus et puis techniquement je pense que même un joueur lambda (sans être programmeur) était assez impressionné.
C'est vrai que sur des machines à base de frame buffer ce genre de jeux avaient plus de sens, surtout qu'ils étaient incapables de produire des jeux 2D convenables donc ça aurait été effectivement une solution. Mais ce genre de jeux est apparu sur le tard, début 1990 au mieux... et à cette époque les machines dont tu parles étaient déjà limite en fin de vie.
Stef- Interne
- Nombre de messages : 5087
Date d'inscription : 04/04/2007
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
TotOOntHeMooN a écrit:Pas plus que pour la 3D... C'est juste* deux CPU plutôt rapides, de la RAM et un double framebuffer.Hpman a écrit:En vrai il est pas du tout fait pour la 2D le 32X, ça à même plutôt tendance à mouliner.
Tu es libre d'en faire ce que tu veux, en plus de la superimposition de la Megadrive.
De souvenir: Une démo du SuperVDP
* sans parler de l'audio en PWM.
Le Super VDP tourne à 30 fps, pas plus d'après l'auteur. Je pense aussi que Sega a développé ce truc pour Virtua Racing ou Fighter, pas pour faire de la 2D.
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
30fps avec deux plans de scrolls et 1 plan de sprites... T'es pas obligé d'aller jusque là.Tryphon a écrit:Le Super VDP tourne à 30 fps, pas plus d'après l'auteur. Je pense aussi que Sega a développé ce truc pour Virtua Racing ou Fighter, pas pour faire de la 2D.
De plus, j'ai envie de dire que tant que tu as tous le reste est a 60fps (sprites et plans MD), ça n'a aucune importance.
Je doute même que les jeux 3D sur 32X soient à plus de 30fps pour peut qu'ils les atteignent.
Quoi qu'on dise, il n'a a absolument rien de câblé en hard dans le 32X pour faire de la 3D.
Tu te retrouve en gros dans la même configuration qu'un PC, dont la liberté de faire ce que tu veux "à la CPU".
Sega a choisi de mettre en avant l'extension avec Virtua Raching/Fighter, car c'étaient leurs hits du moment.
Mais si le souhait avait été de faire que de la 3D façon Model 1, ils auraient mis une CPU V60 et un "GPU" TGP.
D'ailleurs, il n'y a qu'à voir la Saturn et le ST-V pour comprendre que Sega était toujours attaché à la 2D performante.
Le choix des SH-2 n'est pas anodin.... Ils sont déclassés (21MHz) car ne tiennent pas la fréquence prévu pour (28MHz).
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
TotOOntHeMooN a écrit:30fps avec deux plans de scrolls et 1 plan de sprites... T'es pas obligé d'aller jusque là.
Certes, mais reconnais que si le but avait été de pallier des faiblesses de la MD en 2D (lesquelles d'ailleurs ? C'est surtout les couleurs le point faible de la MD, et dans ce cas ça aurait valu le coup d'avoir un ou deux plans en 256 couleurs + des sprites), c'était pas l'architecture idéale.
De plus, j'ai envie de dire que tant que tu as tous le reste est a 60fps (sprites et plans MD), ça n'a aucune importance.
Je doute même que les jeux 3D sur 32X soient à plus de 30fps pour peut qu'ils les atteignent.
Ils ne l'atteigne pas je crois. Mais à l'époque (et même récemment), c'était considéré comme très suffisant du 30 fps en 3D (alors qu'en 2D c'est immonde).
Quoi qu'on dise, il n'a a absolument rien de câblé en hard dans le 32X pour faire de la 3D.
Tu te retrouve en gros dans la même configuration qu'un PC, dont la liberté de faire ce que tu veux "à la CPU".
Oui, tu as raison. Mais vraiment, j'aurais 1000 fois préféré un vrai VDP avec plein de VRAM, un brazillon de palettes et aucune limite de sprites par scanlines que deux processeurs et un framebuffer. L'idéal aurait même été que ça puisse être incorporé à une cartouche (sans add-on à la 32X) mais je crois que ce n'est pas possible.
Concernant la 3D, perso j'abhorre les Wolfenstein, Doom et chaipasquoi. Mais les donjons 3D de Phantasy Star sur SMS (ou Shining and the Darkness sur MD) ont de la gueule. Si on peut faire quelque chose de plus beau (texturé) et plus fluide sur MD, je suis preneur
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Si la Megadrive avait eu le colorbus et la VRAM du VDP de câblé sur le port d'extension, comme en arcade sur System C-2, alors pour trois fois rien niveau coût on aurait pu avoir le double de VRAM et de bande passante DMA, ainsi que 4 palettes par plan sur un total de 32K couleurs sans "rien" changer à la machine.
Pour revenir à la 3D, disons que le frame buffer + CPU "costaud" était certainement une solution économique pour tenir dans un champignon avec un peut d'astuce. Mais j'aurai préféré que le Mega-CD soit mieux pensé avec cela d'origine.
Pour revenir à la 3D, disons que le frame buffer + CPU "costaud" était certainement une solution économique pour tenir dans un champignon avec un peut d'astuce. Mais j'aurai préféré que le Mega-CD soit mieux pensé avec cela d'origine.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Tryphon a écrit:Ils ne l'atteigne pas je crois. Mais à l'époque (et même récemment), c'était considéré comme très suffisant du 30 fps en 3D (alors qu'en 2D c'est immonde).
Comment ça parle mal de Metal Slug ici!
Effectivement le 32X est pas plus gaulé pour la 3D que la 2D, j'ai pas prétendu le contraire. C'est peut être bien ça le souci de cet accessoire au final
DF a fait une rétrospective complète il y a peu:
Hpman- Patient contaminé
- Nombre de messages : 679
Age : 47
Localisation : Lille
Date d'inscription : 22/08/2014
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Effectivement, c'est dur de vendre un truc pareil finalement .Effectivement le 32X est pas plus gaulé pour la 3D que la 2D, j'ai pas prétendu le contraire. C'est peut être bien ça le souci de cet accessoire au final
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Ils ont pourtant réussi à faire des jeux sur PC de cette façon !
Disons qu'il n'était pas judicieux de mettre deux SH-2... Mais ils ont dû avoir un prix de gros.
Disons qu'il n'était pas judicieux de mettre deux SH-2... Mais ils ont dû avoir un prix de gros.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
De toutes façons le meilleurs CPU c'est le 6502, C'est lui qui va être choisi par skynet pour le T800 en 2027,et pis c'est tout
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Hpman a écrit:Comment ça parle mal de Metal Slug ici
Ben il porte bien son nom : limace
J'déconne, c'est une des rares exceptions
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
je suis tombé sur ca, c'est en rapport avec la 1ere vid du topic (j'espere). le moteur de doom (et ses evolutions) expliqué aux quiches.
achement interessant
achement interessant
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Intéressant en effet !
Pour ceux qui voudraient tester le concept ( car c'est un peu le but du post hein ! ), voici un excellent Url avec exemple et code commenté.
Il n' y a plus qu'à adapter ça sur vos machines.
http://lodev.org/cgtutor/raycasting.html
Au boulot messieurs, vous avez 4h !
Pour ceux qui voudraient tester le concept ( car c'est un peu le but du post hein ! ), voici un excellent Url avec exemple et code commenté.
Il n' y a plus qu'à adapter ça sur vos machines.
http://lodev.org/cgtutor/raycasting.html
Au boulot messieurs, vous avez 4h !
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
intéressant tout ça !
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Je le ferai, c'est certain. Mais là, après avoir peaufiné mon moteur (je viens encore de découvrir un bug ), je suis en train de ripper tous les niveaux et tous les sprites de Shinobi. Plus que 7 niveaux et un ennemi !
Edit : je connaissais ton lien sur le raycasting Vetea, et en farfouillant j'ai trouvé ces vidéos, en Français et en Lua (où le gars s'embrouille un peu quelquefois, mais reste clair) :
Le premier épisode :
Edit : je connaissais ton lien sur le raycasting Vetea, et en farfouillant j'ai trouvé ces vidéos, en Français et en Lua (où le gars s'embrouille un peu quelquefois, mais reste clair) :
Le premier épisode :
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Tu sais pourquoi ils sont déclassés à 21 au lieu de 28 ?TotOOntHeMooN a écrit:30fps avec deux plans de scrolls et 1 plan de sprites... T'es pas obligé d'aller jusque là.Tryphon a écrit:Le Super VDP tourne à 30 fps, pas plus d'après l'auteur. Je pense aussi que Sega a développé ce truc pour Virtua Racing ou Fighter, pas pour faire de la 2D.
De plus, j'ai envie de dire que tant que tu as tous le reste est a 60fps (sprites et plans MD), ça n'a aucune importance.
Je doute même que les jeux 3D sur 32X soient à plus de 30fps pour peut qu'ils les atteignent.
Quoi qu'on dise, il n'a a absolument rien de câblé en hard dans le 32X pour faire de la 3D.
Tu te retrouve en gros dans la même configuration qu'un PC, dont la liberté de faire ce que tu veux "à la CPU".
Sega a choisi de mettre en avant l'extension avec Virtua Raching/Fighter, car c'étaient leurs hits du moment.
Mais si le souhait avait été de faire que de la 3D façon Model 1, ils auraient mis une CPU V60 et un "GPU" TGP.
D'ailleurs, il n'y a qu'à voir la Saturn et le ST-V pour comprendre que Sega était toujours attaché à la 2D performante.
Le choix des SH-2 n'est pas anodin.... Ils sont déclassés (21MHz) car ne tiennent pas la fréquence prévu pour (28MHz).
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Ca peut être pour des raisons de dissipation thermique,ou de puissance d'alimentation (ou les 2).
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
De souvenir, ils ne tennaient pas les "28.7Hz" nécessaires pour la Saturn.
Après, c'est une histoire de coef multiplicateur... 7,67MHz *3 = 23 MHz sur MD donc.
(je pense que le 32X a été proposé à Sega US car ils avaient un stock pourri sur les bras)
A noter que le 32X a "physiquement" terminé sa vie dans une sorte de tablette graphique pour gamins.
Après, c'est une histoire de coef multiplicateur... 7,67MHz *3 = 23 MHz sur MD donc.
(je pense que le 32X a été proposé à Sega US car ils avaient un stock pourri sur les bras)
A noter que le 32X a "physiquement" terminé sa vie dans une sorte de tablette graphique pour gamins.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Ca ,c'est possible aussi,d'ailleurs les fabricants de GPU pour pc, le font depuis toujours .je pense que le 32X a été proposé à Sega US car ils avaient un stock pourri sur les bras
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Les fabricants de CPU aussi depuis toujours...
Ils ont une chaine et après les tests, ils vont décliner la gamme avec les batchs "foirés" en réduisant fréquence, cores, etc.
Vue que cette CPU a été créée par Hitachi pour Sega, j'imagine qu'entre japonais qu'on ne dit pas à son "partenaire" technologique d'aller se faire voir car xx% ne sont pas valides ; On prévoit un plan B.
Ils ont une chaine et après les tests, ils vont décliner la gamme avec les batchs "foirés" en réduisant fréquence, cores, etc.
Vue que cette CPU a été créée par Hitachi pour Sega, j'imagine qu'entre japonais qu'on ne dit pas à son "partenaire" technologique d'aller se faire voir car xx% ne sont pas valides ; On prévoit un plan B.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Le 32X ne peut pas gérer la vram sans passer par le 68000, d'où le coefficient x3 ? Ou alors c'est une question de recyclage de CPU à moitié foirés ?
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Sur MD, la VRAM est directement reliée au VDP de la MD. Le 68000 n'y accède que indirectement.
De souvenir, le 32X est "autonome" et n'accède pas à la MD. (patch video et son en externe)
Seul le 68000 peut-être utilisé pour échanger des données via le port cartouche.
De souvenir, le 32X est "autonome" et n'accède pas à la MD. (patch video et son en externe)
Seul le 68000 peut-être utilisé pour échanger des données via le port cartouche.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Je pensais que le SSP160x de Virtua Racing, ou SH2 du 32X pouvaient accéder directement au vdp (et donc zapper le 68000).TotOOntHeMooN a écrit:Sur MD, la VRAM est directement reliée au VDP de la MD. Le 68000 n'y accède que indirectement.
De souvenir, le 32X est "autonome" et n'accède pas à la MD. (patch video et son en externe)
Seul le 68000 peut-être utilisé pour échanger des données via le port cartouche.
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Personne n'accède directement à la VRAM. Elle est cablée directement au VDP et non partagée. (contrairement à la NeoGeo ou ... la NES )philip a écrit:Je pensais que le SSP160x de Virtua Racing, ou SH2 du 32X pouvaient accéder directement au vdp (et donc zapper le 68000).
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Sur NeoGeo tu n'as accès en direct qu'aux palettes (un bank à la fois), pas à la VRAM.
Hpman- Patient contaminé
- Nombre de messages : 679
Age : 47
Localisation : Lille
Date d'inscription : 22/08/2014
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Je sais pour la vram. Comme je l'ai écrit, je pensais que le SSP160x ou SH2 avait un accès direct au VDP, grâce à de petits chemins de cuivre qui vont du port cartridge, jusqu'au VDP.TotOOntHeMooN a écrit:Personne n'accède directement à la VRAM. Elle est cablée directement au VDP et non partagée. (contrairement à la NeoGeo ou ... la NES )philip a écrit:Je pensais que le SSP160x de Virtua Racing, ou SH2 du 32X pouvaient accéder directement au vdp (et donc zapper le 68000).
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Au temps pour moi...philip a écrit:Je sais pour la vram. Comme je l'ai écrit, je pensais que le SSP160x ou SH2 avait un accès direct au VDP, grâce à de petits chemins de cuivre qui vont du port cartridge, jusqu'au VDP.
Alors disons que je doute que le 68000 puisse être déconnecté du bus pour être drivé par un autre circuit.
(en tout cas, je ne crois pas qu'il y ait des signaux pour se faire depuis le port cartouche)
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Via le bus arbitrer non ?TotOOntHeMooN a écrit:Au temps pour moi...philip a écrit:Je sais pour la vram. Comme je l'ai écrit, je pensais que le SSP160x ou SH2 avait un accès direct au VDP, grâce à de petits chemins de cuivre qui vont du port cartridge, jusqu'au VDP.
Alors disons que je doute que le 68000 puisse être déconnecté du bus pour être drivé par un autre circuit.
(en tout cas, je ne crois pas qu'il y ait des signaux pour se faire depuis le port cartouche)
le z80 le fait donc je vois pas pk ça serait pas possible si le cpu a accès au bus .
Invité- Invité
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Visiblement il est effectivement possible d'arrêter le 68000, et aussi de le reset, et même une mystérieuse histoire de puce activer pour la cartouche :TOUKO a écrit:Via le bus arbitrer non ?TotOOntHeMooN a écrit:Au temps pour moi...philip a écrit:Je sais pour la vram. Comme je l'ai écrit, je pensais que le SSP160x ou SH2 avait un accès direct au VDP, grâce à de petits chemins de cuivre qui vont du port cartridge, jusqu'au VDP.
Alors disons que je doute que le 68000 puisse être déconnecté du bus pour être drivé par un autre circuit.
(en tout cas, je ne crois pas qu'il y ait des signaux pour se faire depuis le port cartouche)
le z80 le fait donc je vois pas pk ça serait pas possible si le cpu a accès au bus .
https://wiki.megadrive.org/index.php?title=315-5308
.
/CE0 | Chip Enable for the cartridge, low when accessing $000000-$3FFFFF region when expension unit isn't inserted or $400000-$7FFFFF when it is. |
/HALT | Halt 68K execution |
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
/CE0 permet d'accéder au contenu mémoire de la cartouche en lecture. (la ROM)
/HALT n'est pas câblé sur le port cartouche.
/HALT n'est pas câblé sur le port cartouche.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
Ah merci pour l'info, cette puce arbitrer, c'est donc le chef d'orchestre du 68000 et z80.TotOOntHeMooN a écrit:/CE0 permet d'accéder au contenu mémoire de la cartouche en lecture. (la ROM)
/HALT n'est pas câblé sur le port cartouche.
Re: Explications(ENG) comment le moteur 3D de toy story MD a été codé
A voir, le port d'extension permet probablement aussi d'intervenir.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18167
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Page 2 sur 2 • 1, 2
Sujets similaires
» Metal Slug pour SEGA Genesis/MegaDrive (même moteur et base de code que la version STE)
» PS4 - Comment savoir si un code DLC a été utilisé ou non?
» [ech] code square enix contre code nintendo vip
» moteur de jeu de course en 2D (pseudo3D)
» Licenciements chez Sony: les explications.
» PS4 - Comment savoir si un code DLC a été utilisé ou non?
» [ech] code square enix contre code nintendo vip
» moteur de jeu de course en 2D (pseudo3D)
» Licenciements chez Sony: les explications.
Page 2 sur 2
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum