website logo
Auteur
avatar
AmiDARK

Forum » » Création-Développement » » AmiDARK Engine Rel0.8 Wip : FX2D part 1 : Fake Rasters


Posté : 05-02-2013 15:39 icone du post

Bon.

J'ai enfin terminé le jeu de commandes FAKE RASTER dans sa version telle que je l'avais imaginé dans mon esprit avant de la réaliser.

J'y ai donc ajouté de nouvelles commandes :
Paste Image avec Raster.

Vous allez me dire, quel est l'intêret ? Il suffit d'afficher le raster puis l'image et le tour est joué ? Ben non ... la c'est plus pointu que le 1er principe.
Dans les premières commandes, le raster est affiché sur toute la ligne et, il sera écrasé par les images posées dessus (ou appara?tra derrière ces images si il y a de l'alpha dans ces dites image).

La le principe est totalement différent. Le RASTER n'est PAS affiché à l'écran.
On applique un FXHideRaster( RasterID ) et bang le tour est joué.
Vous me direz ,mais quel est l'intêret ?

Ben simplement de faire un PasteImage spécial qui combine à la fois l'image et le raster.
Prenons l'image originale suivante :

C'est un simple logo (que j'avais réalisé des années en arrière ...

Et bien je peux faire un paste Image incluant un raster dans l'image. Ca pourrait donner un truc comme ça :

Mais je dois l'avouer ... C'est pas ce qui m'intéressait le plus ... Et d'ailleurs dans ce cas... tout ce qui était derrière l'image est perdu ... Pas de transparency ... pas d'alpha...

Et, en repensant à un vieux jeu ... "Super Metroid" sur Super Nintendo, je me suis dit .... Pourquoi pas ?
Je me suis inspiré de ça :

Pour me dire, on devrait pouvoir afficher une image, un fond, une texture avec un raster dedans sans écraser tout le reste de l'image.

Et donc, mon nouvel effet, en appliquant la transparence donne quelque chose dans ce genre :

Là ... il n'y a qu'une image mais on peut aisément imaginer comme dans Super Metroid faire l'effet sur les tiles du 1er plan et avoir un background sans l'effet ...
Tout est possible :)

Voila.

Au final, le jeu de commandes des Fake Raster contient toutes les commandes suivantes :
FXCreateFakeRaster,
FXCreateFakeRasterEx,
FXCreateFakeRasterEx2.
FXDeleteRaster,
FXUpdateRaster.
FXSetRasterLine,
FXSetRasterGradient,
FXSetRasterFromMemblock,
FXMakeMemblockFromRaster.
FXSetRasterY,
FXHideRaster,
FXShowRaster,
FXEnableRasters,
FXDisableRasters,
DEFxImageRastered,
DEFxImageRasteredEx,
DEFxStretchedImageRastered,
DEFXStretchedImageRasteredEx,
=FXGetRasterLine.
=FXGetRasterY.
=FXRasterExist
=FXGetRasterHeight.
=FXIsRasterHidden.
=FXIsRasterDisabled.
=FXIsRasterUpdated.

Voila.

Petit EDIT du message. voici les snapshots de la nouvelle démo qui sera incluse dans la release 0.8 de l'AmiDARK 2D Engine :
Ce 1er snapshot montre l'image original sans aucune modification :
< /img>
Cette seconde image montre l'image original avec les 3 rasters inclut.

Bien entendu, cette image est composée de plusieurs images (ciel étoilé, soleil, barre, titres) qui sont tracées une par une et donc seules certaines ont un raster appliqué.

Je vais préparer une petite archive et mettre tout cela sur os4depot aussitôt que faire se pourra :)
Je rajouterai probablement des modes de filtrage/transparence en plus pour gérer la luminosité mais le système est déjà fonctionnel :)

Il me restera aussi toujours à fixer mon problème de "play sound" qui ne fonctionne pas ... et je pourrais passer à une RC1 de l'AmiDARK 2D Engine :)

@+

Message édité par : AmiDARK / 05-02-2013 23:53
Message édité par : AmiDARK / 05-02-2013 23:54

Cet article provient de Le site des utilisateurs francophones actuels et futurs d'AmigaOS 4.x
https://amiga-ng.org/viewtopic.php?topic=1458&forum=14