top of page

 SDK version 0.20 Pre.7 (SET 2), Scud Race Dreamcast Tech demo et Kamui Wrapper release , faites chauffer les moteurs !!!

Qu'est ce que le SET 2 ?

Les SET 2 étaient des cartes que l'on devait mettre dans un PC. C'était juste une carte graphique avec le Power VR pour commencer à travailler sur le moteur graphique des premiers jeux à avoir été en développement sur Dreamcast.

 

La puissance de ces cartes représentaient environ le 25 %  de celle du Dev Kit Katana que nous connaissons tous, le SET 5.

Le Katana Set 2 était essentiellement un PC Pentium II avec un prototype précoce de  carte graphique PowerVR2 ARC.

Nous étions au début  du développement sur Dreamcast. Par la suite, d'autres révisions du Kit de Développement verront le jour comme le SET 4 (40 % de puissance) et le plus connu, le SET 5.

Photo SET 2

Dreamcast dev kit SET 2

Qu'est ce qu'un SDK ?

Un SDK, pour Sotfware Dévelopment Kit, désigne un ensemble d'outils utilisés par les développeurs pour le développement d'un logiciel destiné à une plateforme déterminée.

Un SDK est composé, a minima, d'un traducteur capable de traduire le langage de programmation en langage machine, d'un éditeur de liens en mesure de relier, en un fichier exécutable, différents éléments et de bibliothèques de routines.

 

Pour simplifier, le SDK contient tous les outils avec lesquelles il étai possible de programmer sur Dreamcast.

 

Il existe plusieurs révisions de SDK. Elles n'ont pas toutes étées découvertes.

Photo SET 4

Sega Dreamcast dev kit Set 4

Photo SET 5

Les spécificité du Katana SDK Version 0.20 Pre.7 (SET2) :

Cette révision de SDK est inédite, une des plus vieilles  connues. Elle contient des documents techniques en japonais,  des manuels d'utilisation et bien d'autres données.

SET 2 Dreamcast SDK.png

Des démos techniques ont spécialement été conçues pour le SET 2. Sans posséder la carte graphique spécifique, il est impossible de pouvoir les jouer. Elles sont en .EXE contrairement au .BIN que l'on retrouvera dès le SET 4. Afin d'espérer démarrer un jeu ou une démo sur un émulateur ou même mieux sur console, il faut impérativement du .BIN.

Les démos :

Video d'une compilation de démo technique Dreamcast (SET 2)

Dev kit Dreamcast SET 5

Dreamcast Demo "Fishman" (SET 2)

Dreamcast Tech Demo Fishman (SET 2).jpg

Dreamcast Demo "CD" (SET 2)

CD : Démonstration d'un  disque compact qui tourne (démo non optimisée).

Fishman : Cette démo technique montre que les sources de lumière et leurs volumes correspondants peuvent être modifiés en temps réel. Elle fait  également un usage intensif des canaux alpha pour les  effets de l'eau (démo non optimisée)

Scud : Monde Scud Race modèle. Appuyez sur la touche Z pour commencer à tourner autour de la piste.  Le mode Free Caméra permet de voler autour du monde avec les touches fléchées (démo non optimisée).

Dreamcast Tech Demo CD (SET 2).jpg

Drive 2 : deux voitures font des embardées sur un pont.  Cette démonstration dispose de plusieurs sources de lumière et effets, qui peuvent être activées de manière interactive (crash du Wrapper).

Koke : Aucune information à son sujet (démo non optimisée, la même que la sample Motlink ?).

D'autres démos, moins impressionnantes, sont  présentes comme par exemple un logo SEGA tournant sur lui-même  ou le fameux TEAPOT.

Les samples :

Cache : Exemple d'application montrant comment quatre-vingt-dix textures peuvent être chargées avec njLoadTexture() et jouées  dans un film très court (démo non optimisée).

Draw2D : Exemple d'application qui montre le dessin d'objets bidimensionnels avec Ninja. Permet à l'utilisateur de dessiner des points, des lignes, des polygones et des cercles (démo non optimisée, écran noir).

Draw3D : Exemple d'application qui montre   plusieurs primitives 3D de Ninja et des modèles rendus dans plusieurs modes.  Les modèles sont rendus avec et sans textures, en fil de fer  et avec ou sans profondeur de brouillard. Une démonstration rapide de mouvement est également incluse (crash du Wrapper).

Dreamcast Sample "Light" (SET 2)

Dreamcast Tech Demo Light (SET 2).jpg

Light : Exemple d'application qui démontre comment gérer plusieurs sources lumineuses (dans ce cas, six) dans une scène.  Chaque source lumineuse peut être allumée ou éteinte et la couleur de chaque source de lumière peut être modifiée en temps réel (crash du Wrapper, fonctionne partiellement avec l'autre SDK du SET 2, à télécharger ici).

Logo: Exemple d'application qui montre comment utiliser Ninja pour de la cartographie environnementale (non optimisée).

Motlink : Exemple d'application qui montre comment créer une hiérarchie d'objets et animer cette hiérarchie (démo non optimisée, la même que Koke vue plus haut ?)

Scroll : L'application montre deux champs de jeu à défilement indépendant. L'un des champs a un canal alpha (crash du Wrapper).

Dreamcast Sample "Cache" (SET 2)

Dreamcast Tech Demo Cache (SET 2).jpg

Shap : Exemple d'application qui démontre l'utilisation de njDrawShapeMotion() pour animer un modèle (crash du Wrapper).

Sprite : L'application montre ce qui ressemble à une matrice de sphères tournant dans l'espace. Chaque sphère est  un objet sprite Ninja 3-D de Ninja (crash du Wrapper).

Teapot : L'application montre la théière classique de l'Utah, cette fois-ci avec une carte environnementale et des reflets spéculaires (démo non optimisée).

Texture : Exemple d'application démontrant comment dessiner des textures plates sous Ninja en utilisant njDrawTexture() (démo non optimisée, ignorer le message d'erreur).

Dreamcast Sample "Texture" (SET 2)

Dreamcast Tech Demo Texture (SET 2).jpg

Torus : Exemple d'application qui dessine huit torii avec différentes  valeurs de matériaux.  Cette démo fonctionne plus rapidement sur les machines avec des    processeurs plus performants - le nombre de polygones que vous voyez est  limité par la vitesse de votre machine (crash du Wrapper).

L'objectif à présent est de rendre toutes les démos techniques jouables. Il y aura  des updates. Le travail a été effectué, pour une première release,  sur Scud Race. Il est dur de savoir si le rendu actuel des démos techniques est fidèle à celui d'origine. Il existe  peu d'images et de vidéos d'époque pour les comparer.

Vous pouvez télécharger le nouveau SDK ci-dessous :

Katana SDK Version 0.20 Pre.7 (SET 2)

Dreamcast Sample "Shape" (SET 2)

D'autres démos techniques n'appartenant à aucun SDK

Le SDK Version 0.20 Pre.7 pour le SET 2 était accompagné d'une vingtaine d'autres démos techniques. Il doit s'agir d'exercices, d'apprentissage pour la personne qui les utilisait.

Aucun travail d'optimisation n'a été fait pour elles. Certaines fonctionnent partiellement, d'autres crash. Il manque des textures par exemple.

Aucune information n'existe concernant leur utilité.

Elles sont au nombre de 26. Des doublons et des différentes versions de la même démo  doivent figurer dans cette archive.

Vous pouvez télécharger le pack de 26 démos techniques pour le SET 2 ci-dessous :

Pack de 26 tech démo Dreamcast (SET 2)

Dreamcast Sample "WindowTest" (SET 2)

WindowTest Dreamcast Tech demo SET 2 (Kamui Wrapper).jpg

Dreamcast Sample "WinTest" (SET 2)

WinTest Dreamcast Tech Demo SET 2 (Kamui Wrapper).jpg

Dreamcast Sample WindowMenu (SET 2)

WindowMenu Dreamcast Tech demo SET 2 (Kamui Wrapper).jpg

Le début du projet

Il est frustrant de posséder physiquement ou numériquement quelque chose avec un fort potentiel et de ne pas pouvoir l'utiliser. Il fallait en  faire  bon usage  même si les démos techniques sont présentes dans tous les SDK du SET 2.

Depuis de nombreuses années, la démo de Scud Race était connue mais demeurait inaccessible.

Je désirai explorer cette version de Scud Race que tout le monde attendait comme le futur hit de la Dreamcast que nous n'avons hélas jamais eu. Mais comment faire pour rendre le rêve réalité ?

Scud Race for Dreamcast (technical demo).jpg

En parlant avec des amis de cette problématique, ils m'ont conseillé  de créer un Wrapper Kamui pour PC. J'ai écrit à la seule personne dans mes contacts avec les compétences nécessaires pour réaliser ce tour de force. Pour notre plus grand bonheur, il a accepté.

Sifting, déjà connu pour son travail de Reverse sur Agartha et Castlevania  a passé plus de 50 heures et 5 mois pour concrétiser cette release. C'était loin d'être gagné. Il a été confronté à quelques obstacles :

«J'ai écrit le code sous linux, mais les démos étaient pour windows. J'ai du utiliser un compilateur croisé.»

«Trouver une machine windows pour tester le wrapper a été difficile. Au début j'ai dû emprunter la machine d'un ami, puis plus tard j'ai opté pour une machine virtuelle windows 10 après l'aquisition d' une carte graphique plus récente.»

«La documentation dans le SDK du SET 2 était pour une version différente de kamui. J'ai fini par devoir inverser l'api dans ida. Je  pense que c'était parce que kamui était encore immature et les choses changeaient beaucoup à l'époque.»

On ne peut que le remercier, peu de personnes auraient consacré tant de temps pour un tel projet, heureusement qu'il aime les challenges !

Scud Race Dreamcast beta.jpg

Première étape du projet

Dreamcast Kamui Wrapper (beginning of project)

«On m'a proposer un emploi chez Slipgate Ironworks, au Danemark. Je pense que le travail que j'ai fait sur ce projet  ainsi que sur Castlevania et Agartha les ont vraiment impressionné !!!»

Étonnamment, personne n'avait encore jamais confectionné un Kamui Wrapper, du moins de le rendre public et en faire profiter toute la communauté.

La pogression du projet en photo :

Dreamcast Scud Race tech demo progress
Scud Race Dreamcast tech demo progress
Sega Dreamcast Scud Race Tech Demo progress
Kamui Wrapper Scud Race Dreamcast final.jpg

Vous pouvez  télécharger le Wrapper ci-dessous :

Kamui Wrapper for Dreamcast SET 2

Deux builds du Wrapper sont disponibles, la première datant du 30.10.2021 et la deuxième du 31.10.2021. La dernière version  corrige le texte qui était brouillé à l'écran mais la vitesse de défilement des démos est plus rapide. Choisissez celle qui vous convient le mieux.

Le Wrapper étant en open source, vous pourrez travailler dessus ultérieurement. Le code se trouve ici : GitHub (à retrouver ici).

"Vous aurez besoin de premake5, direct3d9 et gcc pour compiler les sources. Clang devrait aussi fonctionner, mais je ne l'ai pas testé.

En écrivant ce wrapper, j'ai réalisé que l'API de Kallistios ne supportait pas le tampon d'accumulation du PVR - ai-je raison ? Je n'ai vu aucune fonctionnalité pour cela quand j'ai regardé le code source. KOS semble avoir un support pour cela dans les en-têtes, donc il devrait être tout à fait possible d'ajouter la fonctionnalité si nécessaire. Cela permettrait aux développeurs homebrew de mettre en œuvre une toute nouvelle classe d'effets sur la DC si c'est le cas - je crois que c'est ainsi que Urban Chaos et alone in the dark 4 ont réussi à faire du shadowmapping, et aussi comment Raster a réussi à faire fonctionner Quake3 si bien."

Scud Race tech demo, sur les routes du paradis !

Comme expliqué plus haut, cette courte démo technique de Scud Race ne fonctionne que sur PC contrairement à Tower of Babel qui pouvait   être lancé  sur un émulateur. Elle n'a jamais été prévue pour une console de détail.

Sega Dreamcast Scud Race (Sonic).jpg
Dreamcast Scud Race Dolphin Tunnel.jpg

Scud Race Dreamcast  Tech Demo Video

Scud Race Arcade.jpg

On ne comprend pas pourquoi SEGA n'a pas poussé le développement de son jeu d'arcade pour le sortir sur la Dreamcast. Le peu que l'on puisse voir de cette démo donne l'eau à la bouche. Les joueurs l'attendaient, certains avaient même acheté une console en prévision de sa sortie.

Mais ce qu’on sait de ce titre, c’est qu’une adaptation a été envisagée sur SEGA Saturn qui accusait, hélas, des ventes difficiles. Celles-ci se sont effondrées en 1996 en occident et ont commencé à baisser au Japon avec l'avènement de Final Fantasy VII au début de l'année 1997. Pour l'adaptation de Scud Race, plusieurs problèmes se posèrent, à commencer par les limitations techniques.

À l'époque, le projet avorte une première fois (sans doute vers 1996), puis refait surface en 1997. D'abord avec une version améliorée en arcade intitulé Scud Race Plus et ensuite avec la démo technologique (Tech-Demo) que l'on vous présente aujourd'hui.

Scud Race Dreamcast tech demo.jpg

Tous les fans se rappellent de cette démo pourtant faiblement diffusée. Ce qu’il faut savoir, c’est que la borne d’arcade Model3 est une architecture complexe et difficile à transférer vers une autre technologie. Et Scud Race (Sega Super GT en Amérique du Nord) fait partie de ces jeux difficilement transposables d'un support à un autre.

En me replongeant dans ce comparatif, j’ai fouillé dans mes documents, et je me suis aperçu que SNK, en arcade, essayait la même année de percer dans la 3D avec un jeu de caisses.

Scud Race  Dolphin Tunnel Dreamcast.jpg
Scud Race Dreamcast.jpg
Scud Race Sega Dreamcast.jpg
Scud Race Dreamcast Debug Menu.jpg

Pour de nombreux développeurs, la création d'un jeu de course à l'époque était une solution de "facilité" (c'est notamment pour ça qu'il y avait tant de jeux de F1 à cette période et que Yu Suzuki a choisi d'exploiter cette même discipline pour Virtua Racing). Il en fut de même avec Ridge Racer pour Namco en 1994 sur PlayStation.

Mais de tous les jeux de course disponibles vers la moitié des années 1990, Scud Race était sans aucun doute l'un des plus impressionnants.

La technologie de la Model3 était telle que la concurrence pouvait difficilement lutter.

Aussi, la version Scud Race Plus, disponible dès 1997 et apportant quelques nouveautés, n'avait pas vraiment d'équivalent et le jeu était très apprécié dans les salles d'arcade. SEGA a évidemment envisagé une adaptation de son titre phare d'arcade sur Dreamcast. C'est pour cette raison, qu'en 1997, a émergé une démo technologique (sous la forme d'une vidéo destinée à montrer les capacités de la future console à la spirale).

Inutile de vous dire que tout le monde retenait son souffle tant il paraîssait inconcevable, à l'époque, de jouer à un tel titre dans son salon.

Malheureusement, cela n'arrivera jamais. L'espoir a laissé place à la déception, et c'est donc une forme de renaissance d'accueillir aujourd'hui cette démo technologique et d'en faire profiter tout le monde. Ce que nous laisse découvrir cette démo, c'est le circuit complet (la première piste du jeu) modélisé en 3D avec un équivalent de la technologie Dreamcast. Cela montre bien que l'adaptation était possible, surtout qu'en fouillant, on découvre une autre démo, intitulée "Drive2 (crash duWrapper)", qui démontre que l'ajout d'un véhicule n'était pas un problème.

Le jeu ne sortira jamais de manière officielle, malheureusement. On peut imaginer que la démo est le fruit d'un développeur d'AM2 qui souhaitait mettre en avant les capacités visuelles de la console. Toujours est-il que l'annulation de l'adaptation reposerait sur une raison toute simple : SEGA était sur le point de perdre le droit d'exploitation des véhicules aperçus dans le jeu, condamnant de ce fait toutes conversions sur console.

Le mystère est encore à élucider. Mais une chose est désormais certaines, Scud race est transposable sur Dreamcast. Alors les programmeurs chevronnés, si vous voulez réchauffer vos mains dans vos soirées d’hiver, n’oubliez pas ce qu'il vous reste à faire !

……………….ROLLING START !

Texte de Romain Villez , modification et correction par Régis Monterrin

Mode d'emploi en jeu :

  • Appuyez sur Z pour accéder au mode démo.

  • A et D font monter et descendre la caméra.

  • Utilisez les flèches pour vous déplacer.

  • Le bouton droit de la souris ouvre le Debug Menu.

La vidéo de cette démo agrémentant cet article a été fait sur la version du Wrapper en date du 30.10.2021. Depuis, une nouvelle build (31.10.2021) a été fournie corrigeant le texte  qui était brouillé en haut à gauche de l'écran.

Vous pouvez  télécharger un pack de texture en JPG ci-dessous :

Scud Race et Drive2 Texture pack

Important, pour pouvoir y jouer :

  • Dans un premier temps, téléchargez le SDK Version 0.20 Pre.7 (SET 2) puis le Kamui Wrapper.

  • Ouvrez le SDK et rendez-vous dans le dossier Ninja puis ensuite Demo, vous y trouverez les 5 démo techniques. Pour les autres démos de moindre importance, le chemin d'accès est Ninja puis Sample.

  • Choisissez la démo que vous voulez essayer puis rentrez dans le dossier lui correspondant, en l'occurence Scud.

  • Ouvrez le Kamui Wrapper téléchargé auparavant, puis copiez les fichiers KAMUI.DLL. et  KAMUI.CFG.

  • Collez les dans le dossier correspondant à la démo technique choisie, par exemple Scud. Il faut que le .EXE soit présent au même endroit que le .DLL et le .CFG comme sur la photo sur la droite.

  • Vous n'avez plus qu'à double-cliquer sur le .EXE de la démo. Deux fenêtres s'ouvriront dont une avec le jeu.

Kamui Wrapper for Scud Race Dreamcast Tech demo

A propos de la vitesse  du Wrapper : Vous pouvez la régler dans le fichier .CFG. Ouvrez le fichier .CFG dans le bloc-notes et modifiez la valeur du framelimit comme vous le souhaitez. Dans la démo de Scud, il y a un compteur FPS en haut à gauche de l'écran. Nous ne savons pas si les démos sont censées tourner à 30 ou 60 images par seconde.

N'hésitez pas à regarder "les autres jeux annulés" que j'ai trouvés. Pour les plus curieux d'entre vous, j'ai créé une "liste de tous les unreleased de laDdreamcast".

bottom of page