La Place des Développeurs Application Windows pour graphismes projet MSX
Bonjour à tous,
N'ayant jamais vraiment trouvé ce que je voulais dans les outils disponibles sur Windows, je me suis lancé dans le développement d'une nouvelle application (avec Visual Studio Express) pour développer des graphismes sur MSX. Je progresse pas à pas, notamment parce que la programmation orientée objet n'a jamais été mon fort, et qu'elle est au coeur de Visual Basic (mais j'avance quand même ...).
Le cahier des charges de base est (pour l'instant) le suivant :
- Projet : gestion par l'application d'un projet global (en SCREEN2 ou en SCREEN5), regroupant un ou plusieurs jeux de tiles et de sprites, une ou plusieurs palettes, des maps.
- Tiles : un ou plusieurs jeux de tiles en 8x8 ou 16x16, avec les outils d'édition standard.
- Sprites : un ou plusieurs jeux de sprites en 16x16, soit en mode 1 (MSX1) ou en mode 2 (MSX2 et plus).
- Palettes : une ou plusieurs palettes par projet (si le projet est en MSX2, évidemment)
- Maps : une ou plusieurs maps par projet. Les palettes différentes seront liées à des maps différentes.
- Import/Export : possibilité d'importer un jeu de tiles à partir d'une image, d'exporter les jeux de tiles, de sprites et les maps sous un format exploitable en développement (fichier de données brutes .bin / fichier de donnée texte .asm)
Afin que cet outil réponde au plus grand nombre, je souhaiterai savoir ce qu'il vous semblerait utile d'ajouter dans ces fonctions de base et/ou ce qu'il serait intéressant d'ajouter par la suite.
Merci. Edité par Metalion Le 16/10/2015 à 11h05
N'ayant jamais vraiment trouvé ce que je voulais dans les outils disponibles sur Windows, je me suis lancé dans le développement d'une nouvelle application (avec Visual Studio Express) pour développer des graphismes sur MSX. Je progresse pas à pas, notamment parce que la programmation orientée objet n'a jamais été mon fort, et qu'elle est au coeur de Visual Basic (mais j'avance quand même ...).
Le cahier des charges de base est (pour l'instant) le suivant :
- Projet : gestion par l'application d'un projet global (en SCREEN2 ou en SCREEN5), regroupant un ou plusieurs jeux de tiles et de sprites, une ou plusieurs palettes, des maps.
- Tiles : un ou plusieurs jeux de tiles en 8x8 ou 16x16, avec les outils d'édition standard.
- Sprites : un ou plusieurs jeux de sprites en 16x16, soit en mode 1 (MSX1) ou en mode 2 (MSX2 et plus).
- Palettes : une ou plusieurs palettes par projet (si le projet est en MSX2, évidemment)
- Maps : une ou plusieurs maps par projet. Les palettes différentes seront liées à des maps différentes.
- Import/Export : possibilité d'importer un jeu de tiles à partir d'une image, d'exporter les jeux de tiles, de sprites et les maps sous un format exploitable en développement (fichier de données brutes .bin / fichier de donnée texte .asm)
Afin que cet outil réponde au plus grand nombre, je souhaiterai savoir ce qu'il vous semblerait utile d'ajouter dans ces fonctions de base et/ou ce qu'il serait intéressant d'ajouter par la suite.
Merci. Edité par Metalion Le 16/10/2015 à 11h05
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
Salut Métalion,
Je peux t'aider sans problème pour la partie application windows. Développer des applis en dotNET, c'est juste mon métier (vbNET ou C#) ce serait avec plaisir. J'ai déjà développé un tas de petits outils surtout orienté SCREEN 2 (editeur de niveau, editeur de pattern et import de pattern depuis des images)
J'ai aussi rapidement testé un interfacage entre openMSX et une appli qui permet d'envoyer des commandes à l'émulateur.
Voilà. Edité par RibbSayan Le 17/10/2015 à 11h04
Je peux t'aider sans problème pour la partie application windows. Développer des applis en dotNET, c'est juste mon métier (vbNET ou C#) ce serait avec plaisir. J'ai déjà développé un tas de petits outils surtout orienté SCREEN 2 (editeur de niveau, editeur de pattern et import de pattern depuis des images)
J'ai aussi rapidement testé un interfacage entre openMSX et une appli qui permet d'envoyer des commandes à l'émulateur.
Voilà. Edité par RibbSayan Le 17/10/2015 à 11h04
Je prends note pour le SCREEN10 et 12, pour un développement ultérieur.
Ce sera avec plaisir, parce que j'avance doucement, et je galère un peu avec le Visual Basic. Comme je le disais plus haut, la POO n'est pas vraiment mon fort, et pour l'instant, j'ai même l'impression que ça complique plus les choses que cela ne les simplifie. Je n'hésiterai pas à te poser des questions si je suis bloqué.
RibbSayan :
Je peux t'aider sans problème pour la partie application windows. Développer des applis en dotNET, c'est juste mon métier (vbNET ou C#) ce serait avec plaisir. J'ai déjà développé un tas de petits outils surtout orienté SCREEN 2 (editeur de niveau, editeur de pattern et import de pattern depuis des images)
Ce sera avec plaisir, parce que j'avance doucement, et je galère un peu avec le Visual Basic. Comme je le disais plus haut, la POO n'est pas vraiment mon fort, et pour l'instant, j'ai même l'impression que ça complique plus les choses que cela ne les simplifie. Je n'hésiterai pas à te poser des questions si je suis bloqué.
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)

Metalion :
...Comme je le disais plus haut, la POO n'est pas vraiment mon fort, et pour l'instant, j'ai même l'impression que ça complique plus les choses que cela ne les simplifie....
Idem pour moi !

RibbSayan,
J'ai une première question pour toi.
Je veux déclarer un tableau de couleur :
J'ai un "Déclaration attendue" à la 2e ligne.
Je viens pourtant de déclarer le tableau ??????
J'ai une première question pour toi.
Je veux déclarer un tableau de couleur :
Code :
Dim MSX1_Color(15) As Color
MSX1_Color(0)=Color.Black
...
J'ai un "Déclaration attendue" à la 2e ligne.
Je viens pourtant de déclarer le tableau ??????
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
Ton code est bon.
Par contre, il te faut la référence System.Drawing dans ton projet.
Et dans ton code, là ou tu utilises la classe Color, à la 1ère ligne de ton fichier avoir
Imports System.Drawing
Pour ajouter une référence, dans le menu PROJECT, tu fais add reference et tu coches System.Drawing
Par contre, il te faut la référence System.Drawing dans ton projet.
Et dans ton code, là ou tu utilises la classe Color, à la 1ère ligne de ton fichier avoir
Imports System.Drawing
Pour ajouter une référence, dans le menu PROJECT, tu fais add reference et tu coches System.Drawing
RibbSayan :
Ton code est bon.
Par contre, il te faut la référence System.Drawing dans ton projet.
Imports System.Drawing
Par contre, il te faut la référence System.Drawing dans ton projet.
Imports System.Drawing
C'est déjà fait ! En tête de mon code, j'ai :
Code :
Imports System.IO
Imports System.Drawing
C'est pourquoi je ne comprends pas l'erreur ...

MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
Si tu déclares une variable dans une classe (ou un module), il faut soit appliquer l'assignation à la volé ou alors tu écris l'assignation (MSX1_Color(0)=Color.Black ) dans une méthode. Tu ne peux pas écrire du code seul dans la classe
Ex:
Imports System.Drawing
Module Module1
Dim MSX1_Color(15) As Color
MSX1_Color(0) = Color.Black
Sub Main()
Try
MSX1_Color(0) = Color.Black
Console.WriteLine(MSX1_Color(0).ToString)
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
End Sub
End Module
Ex:
Imports System.Drawing
Module Module1
Dim MSX1_Color(15) As Color
Sub Main()
Try
MSX1_Color(0) = Color.Black
Console.WriteLine(MSX1_Color(0).ToString)
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
End Sub
End Module
RibbSayan :
Si tu déclares une variable dans une classe (ou un module), il faut soit appliquer l'assignation à la volé ou alors tu écris l'assignation (MSX1_Color(0)=Color.Black ) dans une méthode. Tu ne peux pas écrire du code seul dans la classe
Oui, c'est bien ça le problème, effectivement.
Mon code était directement dans la classe.
RibbSayan :
En framework .net 4, tu peux écrire une déclaration comme cela.
Dim MSX1_Color() = {Color.AliceBlue, Color.AntiqueWhite, Color.Aqua}
Dim MSX1_Color() = {Color.AliceBlue, Color.AntiqueWhite, Color.Aqua}
Oui, j'ai fini par essayer cette déclaration à la volée.
Par contre, ce type de déclaration n'accepte pas que le tableau soit dimensionné de façon explicite ...
Code :
' Cette déclaration marche
Dim MSX1_Color() = {Color.AliceBlue, Color.AntiqueWhite, Color.Aqua}
' Cette déclaration ne marche pas !
Dim MSX1_Color(2) = {Color.AliceBlue, Color.AntiqueWhite, Color.Aqua}
Merci

MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie