| Structure de donnés pour un système d'animation | |
|
|
|
Auteur | Message |
---|
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Dim 12 Sep 2010 - 23:06 | |
| Mais faut se servir de quoi pour les DLL ? Vu que j'dois adapter ça à GM, y'a une solution particulière à utiliser ? |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 14:48 | |
| Il te faut un IDE, déjà pour compiler ta dll, ensuite t'as des fonctions de GM pour lire les fonctionnalités de ta dll. Enfin tout est sur le site du cbna, va jeter un œil. |
|
| |
master47 Utilisateur confirmé: Rang *****
Messages : 2368 Projet Actuel :
-------------------
> PacWars
> The Perfect Pattern Studio
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:10 | |
| pour avoir plus de précision, vu que c'est des entiers t'as qu'a faire x1000 quand tu sauves et /1000 quand tu charges. sinon ya full dll qui te permettent de charger du binaire, et là c'est pour tous les types de variables (byte, short, int, uint, long, ulong, double, float, ...) |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:14 | |
| y a sa sinon : - Spoiler:
Ecriture d'un char :[/size] - Code:
-
file_bin_write_byte(argument0, argument1) Lecture d'un char : - Code:
-
var b; b = file_bin_read_byte(argument0) return (b&$7F) - (b&$80) Ecriture d'un unsigned char - Code:
-
file_bin_write_byte(argument0, argument1) Lecture d'un unsigned char - Code:
-
return file_bin_read_byte(argument0) Ecriture d'un short int - Code:
-
argument1 += $10000 file_bin_write_byte(argument0, argument1 & $FF) file_bin_write_byte(argument0, argument1 >> 8) Lecture d'un short int - Code:
-
var b1, b2; b1 = file_bin_read_byte(argument0) b2 = file_bin_read_byte(argument0) return b1 + ((b2&$7F) - (b2&$80)<<8) Ecriture d'un unsigned short int - Code:
-
file_bin_write_byte(argument0, argument1 & $FF) file_bin_write_byte(argument0, argument1 >> 8) Lecture d'un unsigned short int - Code:
-
return file_bin_read_byte(argument0) + (file_bin_read_byte(argument0)<<8) Ecriture d'un int - Code:
-
if(sign(argument1) == -1) { argument1 = abs(argument1) file_bin_write_byte(argument0, $100 - (argument1 & $FF) ) file_bin_write_byte(argument0, $FF - ((argument1>>8) & $FF) ) file_bin_write_byte(argument0, $FF - ((argument1>>16) & $FF) ) file_bin_write_byte(argument0, $FF - (argument1>>24) ) } else { file_bin_write_byte(argument0, argument1 & $FF) file_bin_write_byte(argument0, (argument1>>8) & $FF) file_bin_write_byte(argument0, (argument1>>16) & $FF) file_bin_write_byte(argument0, argument1>>24) } Lecture d'un int - Code:
-
var b1, b2, b3, b4; b1 = file_bin_read_byte(argument0) b2 = file_bin_read_byte(argument0) b3 = file_bin_read_byte(argument0) b4 = file_bin_read_byte(argument0) return b1 + (b2<<8) + (b3<<16) + ((b4&$7F) - (b4&$80)<<24) Ecriture d'un unsigned int - Code:
-
file_bin_write_byte(argument0, argument1 & $FF) file_bin_write_byte(argument0, (argument1 >> 8) & $FF) file_bin_write_byte(argument0, (argument1 >>16) & $FF) file_bin_write_byte(argument0, argument1 >> 24) Lecture d'un unsigned int - Code:
-
return file_bin_read_byte(argument0) + (file_bin_read_byte(argument0)<<8) +(file_bin_read_byte(argument0)<<16) + (file_bin_read_byte(argument0)<<24) Ecriture d'un float - Code:
-
var s, exponent, mantissa, tmp, bexp, b3, b2, b1;
s = ( sign(argument1) == -1 ) << 7 argument1 = abs(argument1) exponent = floor( log2(argument1) ) if(exponent > 0) mantissa = argument1/(1<<exponent) - 1 else mantissa = argument1*(1<<-exponent) - 1 tmp = mantissa
b3 = mantissa*(1<<8) tmp = frac(b3) b2 = tmp*(1<<8) tmp = frac(b2) b1 = tmp*(1<<8)
b1 = floor(b1) b2 = floor(b2) b3 = floor(b3) bexp = exponent + 127
file_bin_write_byte(argument0, ((b2&1)<<7) | (b1>>1) ) file_bin_write_byte(argument0, ((b3&1)<<7) | (b2>>1) ) file_bin_write_byte(argument0, (b3>>1) | ((bexp&1)<<7) ) file_bin_write_byte(argument0, s | (bexp>>1) ) Lecture d'un float - Code:
-
var b1, b2, b3, b4, s, exponent, mantissa; b1 = file_bin_read_byte(argument0) b2 = file_bin_read_byte(argument0) b3 = file_bin_read_byte(argument0) b4 = file_bin_read_byte(argument0)
if(b4&$80) s=-1 else s=1
exponent = ((b4&$7F)<<1) + (b3>>7) - 127 b3 = b3&$7F mantissa = 1+b3/(1<<7)+b2/(1<<15)+b1/(1<<23)
if(exponent > 0) return s*mantissa*(1<<exponent) return s*mantissa/(1<<-exponent) Ecrire une chaine de caractere (string) - Code:
-
var i; for(i=0 ; i<string_length(argument1) ; i+=1) file_bin_write_byte(argument0, ord( string_copy(argument1, i+1, 1) ) ) Lire une chaine de caractères (string) - Code:
-
var str, i; str = "" for(i=0 ; i<argument1 ; i+=1) str += chr( file_bin_read_byte(argument0) ) return str
|
|
| |
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:24 | |
| Ah, donc du coups je peux signer des variables sur quelques bytes dans la mém via GM ? |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:28 | |
| A la base c'est juste pour lire et écrire dans des fichier binaires, mais après tu peut toujours faire d'autres choses ..... :lng: |
|
| |
master47 Utilisateur confirmé: Rang *****
Messages : 2368 Projet Actuel :
-------------------
> PacWars
> The Perfect Pattern Studio
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:37 | |
| quote de où onilink ? :noel: |
|
| |
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:46 | |
| - onilink_ a écrit:
- A la base c'est juste pour lire et écrire dans des fichier binaires, mais après tu peut toujours faire d'autres choses ..... :lng:
Baaah, tout ce que je cherche à faire c'est signer 3 variables sur un byte, deux sur deux bytes C'est vraiment lourd GM sur ce point là |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 17:54 | |
| - master47 a écrit:
- quote de où onilink ?
Bah quote de moi (voir créer vos propres sauvegardes) En tout cas Termite on pourras dire que ton jeu seras super optimisé. Tu fait partie de ces personnes qui devraient abandonner GM et se tourner vers le c++. Si un jour ça te tente je pourrais te passer des exemples SDL+OpenGl pour que tu débute la 2d. En tout cas bon courage pour la suite |
|
| |
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 18:00 | |
| - onilink_ a écrit:
- master47 a écrit:
- quote de où onilink ?
Bah quote de moi (voir créer vos propres sauvegardes)
En tout cas Termite on pourras dire que ton jeu seras super optimisé. Tu fait partie de ces personnes qui devraient abandonner GM et se tourner vers le c++. Si un jour ça te tente je pourrais te passer des exemples SDL+OpenGl pour que tu débute la 2d. En tout cas bon courage pour la suite Yes, mais j'ai programmé toute la base du moteur, en plus j'ai aucune idée comment faire du mplay en C++ Et le résultat semble pas trop trop mauvais via GM, le seul soucis c'est la mémoire.. Faudrait que je voie ça si GM commence à être trop handicapant En cas j'suis bien intéressé par un exemple de tableau foutu sur GM via c++ ou n'importe quel autre langage (vu que j'ai pas tellement de base en C / C# / C++ ) D'un autre côté c'est pas forcément nécessaire pour le moment, vu que je taff sur le log' de création d'animations pour les objets j'peux me servir de grid ou quoi sans soucis (vu qu'après le format reste le même, peut importe comment je l'écrit), mais une petite longueur d'avance ça serait un bon plus ! :d |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 18:03 | |
| Bah reste sous GM pour ton projet, mais ce que je veux dire c'est que si un jour tu te lance dans un nouveau projet, je pense que le coder en c++ serait une très bonne expérience |
|
| |
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 18:16 | |
| - onilink_ a écrit:
- Bah reste sous GM pour ton projet, mais ce que je veux dire c'est que si un jour tu te lance dans un nouveau projet, je pense que le coder en c++ serait une très bonne expérience
Yes, j'espère ne pas avoir trop de probs avec GM ! Faudrait que je teste la version de mon moteur sur un pc pourrite et regarder un peu tout ça (du style 256Mo Ram / Core @1.5GHZ) |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 18:36 | |
| bah moi j'avais un vieux pc ou les jeux n'allais pas au dessus de 30 fps avec une room vide :/ |
|
| |
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 18:45 | |
| - onilink_ a écrit:
- bah moi j'avais un vieux pc ou les jeux n'allais pas au dessus de 30 fps avec une room vide :/
Yes, là je tappe dans les 15-20Fps pour un pc 512Mo Ram Core @1.5GHz et.. 16MB dans la mémoire vidéo Si la CG / Chipset Graphic est pas assez puissant, ça pompe sur le proco 'principal' j'me trompe ? |
|
| |
master47 Utilisateur confirmé: Rang *****
Messages : 2368 Projet Actuel :
-------------------
> PacWars
> The Perfect Pattern Studio
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 19:15 | |
| "en plus je ne sais meme pas comment faire du mplay sous c++"
Le mplay de gm c'est de la bouse fondamentale. c'est tellement mieux de travailler directement avec les sockets |
|
| |
Termite Utilisateur confirmé: Rang ****
Messages : 1005 Localisation : Dans ta charpente ! Projet Actuel : RayEngine 5.0
| Sujet: Re: Structure de donnés pour un système d'animation Lun 13 Sep 2010 - 19:17 | |
| - master47 a écrit:
- "en plus je ne sais meme pas comment faire du mplay sous c++"
Le mplay de gm c'est de la bouse fondamentale. c'est tellement mieux de travailler directement avec les sockets mplay => multijoueur, pas forcément la fonction de GM |
|
| |
Chulien Utilisateur confirmé: Rang *****
Messages : 2232
| |
| |
Contenu sponsorisé
| Sujet: Re: Structure de donnés pour un système d'animation | |
| |
|
| |
| Structure de donnés pour un système d'animation | |
|