PROGRAMMER DES JEUX

Programmation avancée de jeux en PureBasic
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: PROGRAMMER DES JEUX

Message par blendman »

A mon avis, PB doit permettre de faire des jeux en 3Diso performants (moteur 2D, même si visiblement, il vaut mieux utiliser des sprite3D, pour la transparence des png avec canal alpha en niveau de gris).
Par exemple, il me semble que celui-ci est réalisé avec pb (en tout cas, il est sur le site purebasic.com :)):
http://www.jeuxvideo.fr/jeux/restricted-area/

Pour un jeu 3D, il ne faut pas le comparer avec l'unreal engine ou le crytek, parce que très peu de moteurs même pros peuvent rivaliser :), mais avec ce qui se fait avec Ogre, car si j'ai bien compris c'est l'un des moteurs 3D qu'on peut utiliser avec PB.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: PROGRAMMER DES JEUX

Message par Ar-S »

Oui.
Et les prochaines release de PB qui devraient apporter des nouveautés coté 3D
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
Cool Dji
Messages : 1126
Inscription : ven. 05/sept./2008 11:42
Localisation : Besançon
Contact :

Re: PROGRAMMER DES JEUX

Message par Cool Dji »

Ar-S a écrit :Oui.
Et les prochaines release de PB qui devraient apporter des nouveautés coté 3D
Yes, yes, yes !!!!
Only PureBasic makes it possible
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: PROGRAMMER DES JEUX

Message par djes »

Il n'y a que les deux derniers lethal qui sont codés en XNA (obligatoire pour le portage sur xbox) ; les autres (et les autres jeux) sont faits en PB, et celui-ci, correctement utilisé, est au moins aussi rapide que n'importe quel autre langage. Il y a juste quelques astuces à connaître, qui permettent de tirer le meilleur de DirectX. Si vous cherchez bien sur le forum, tout y est ;)
Pour infos, dans lethal, il y a des centaines de sprites énormes, plusieurs plans de parallax, et ça ne rame pas...
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: PROGRAMMER DES JEUX

Message par Backup »

Warkering a écrit :Non, je me fie aux performances que donne PureBasic sur mon ordinateur, qui sont de loin dépassé par un moteur professionnel! :!:
pas la peine de répondre a la place de Parole de Jojo :roll:

mais puisque tu veux te mettre dans la discussion

soit précis , tu parle de quel moteur ?

parceque quoique tu en dise , le purebasic est un langage compillé
qui d'apres ce que j'en ai lu , donne un code Assembleur pas mal optimisé

alors tu parle de quoi exactement ?

-- du nombre de sprites affiché simultanément ?? par rapport au nombre de FPS ?
je relève le defis quand tu veux .... ;)

-- de la taille du fichier generé (exe )

la aussi , fait afficher 10000 sprites par ton moteur , et apres on compare la taille
de l'exe generé par ton moteur , (dll et compagnie compris ....)
et celle d'un exe generé par purebasic (sans dll)

maintenant , si on fait la synthese des 2 .... je suis pas sur que ton "moteur" quel qu'il soit
ecrase Purebasic .... :roll:

Purebasic est finalement tres tres proche d'un résultat obtenu en assembleur pure
tu peux aligner autant de moteurs que tu veux , je sais déja , qu'il n'y a pas photo....



maintenant , avancer que tel ou tel moteur (forcement fait en C++/C#, avec toutes les dll que ça sous entends ...) soit plus performant que Purebasic, pour un résultat donné (afficher 10000 sprites a l'ecran) ...
est une hérésie , par contre , il est clair qu'avec un 'moteur' , tout est surement plus simple
a mettre en oeuvre ....

Purebasic ne se place pas au niveau d'un moteur qui va contenir des fonctions pré-programmées (donc pas forcement optimisées)

par contre , avec Purebasic , tu va pouvoir te faire un "moteur" (ça a deja été fait)


bref ta comparaison, ne tiens pas , c'est comme comparer le langage C a 3DSmax
on ne parle pas du tout de la meme chose ... ;)
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Re: PROGRAMMER DES JEUX

Message par jbernard13 »

Dobro as mis un super tuto complet sur les bases d'un jeux 2D

http://www.purebasic.fr/french/viewtopi ... 21&t=10191
Jbernard13
Warkering
Messages : 808
Inscription : ven. 08/janv./2010 1:14
Localisation : Québec, Canada

Re: PROGRAMMER DES JEUX

Message par Warkering »

Je parle des fonctions 3D de PureBasic. Faut pas trop me prendre pour un con, je ne suis pas complétement idiot, je fais le comique, mais je suis loin d'être une bourde.
Je dit simplement que PureBasic, selon expérience personnelle sur mes ordinateurs, n'atteint pas les performances de la plupart des autres moteur que j'ai tester.
Je n'ai jamais dit quelque chose par rapport au langage, seulement aux fonctions d'affichage 3D, et même quelques 2D.
Par exemple, afficher 10 000 sprites avec PureBasic sur mon portable va me donner un résultat satisfaisant relativement fluide, mais avec d'autres, comme le couple C++/SDL, ou encore GLBasic, j'obtiens le triple des FPS. Même chose pour un simple cube ou un niveau complet coupler à des shaders.
Je répète que je parle par expérience personnel, et que ensuite je n'ai pas le portable du siècle. J'ai un i5 qui est surpuissant à ma vue et la mémoire DDR3 4 Go avec, le disque dur rapide et tout le kit, mais une Intel HD, processeur graphique intégré à mon i5 comme "carte graphique". Pourtant, bien qu'elle soit classé comme totalement merdique, elle me permet de faire rouler sans problème CoD4, ou encore WoW ou LoL.
Encore une fois, je ne dénigre pas PureBasic, qui atteint de meilleures performances que le C++ quelques fois , ni les fonctions graphiques de celui-ci, je souligne simplement que sur mes différents ordinateur sur lesquelles j'ai tester, majoritairement équipés Intel, c'était pas super.
Sur ce, j'encourage tout le monde à adopter PureBasic, que ce soit comme passe-temps ou professionnel, car il est très agréable et très puissant.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: PROGRAMMER DES JEUX

Message par Backup »

Warkering a écrit :Je parle des fonctions 3D de PureBasic. Faut pas trop me prendre pour un con, je ne suis pas complétement idiot,

oui bah moi non plus !

tu reponds a ma reflexion sur la 2D !
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: PROGRAMMER DES JEUX

Message par Backup »

Warkering a écrit : Par exemple, afficher 10 000 sprites avec PureBasic sur mon portable va me donner un résultat satisfaisant relativement fluide, mais avec d'autres, comme le couple C++/SDL, ou encore GLBasic, j'obtiens le triple des FPS. Même chose pour un simple cube ou un niveau complet coupler à des shaders.

bah, c'est parceque tu ne sait pas te servir de Purebasic , voila tout

du reste lorsque je regarde parmis tes 660 messages , je cherche encore des exemples de ta façon de coder en purebasic ... :roll:

[Réedit]

juste pour dire, rien ne t'empeche d'utiliser un moteur Tiers comme le font le C et Glbasic !!
en Purebasic , c' est pas ça qui manque !!
de plus , ce sont souvent des librairies, ce qui raccourcis pas mal le code
au lieu de te taper une dll ou je ne sais quel runtime
Warkering
Messages : 808
Inscription : ven. 08/janv./2010 1:14
Localisation : Québec, Canada

Re: PROGRAMMER DES JEUX

Message par Warkering »

Bon et bien, c'est ça, je suis un cave. De toute façon, je n'ai rien a prouver, alors tu repasseras, Dieu, pour voir mes travaux.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: PROGRAMMER DES JEUX

Message par Backup »

je te renvoie a tes propre contradiction :
http://www.purebasic.fr/french/viewtopi ... 77#p125877
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: PROGRAMMER DES JEUX

Message par G-Rom »

Purebasic est finalement tres tres proche d'un résultat obtenu en assembleur pure
tu peux aligner autant de moteurs que tu veux , je sais déja , qu'il n'y a pas photo....
Faut pas non plus se palucher ;)
PB génère du bon code , stop. de là à dire que c'est du presque assembleur est une hérésie.
PB à d'énormes lacune , surtout au niveau du graphismes.
par exemple si tu charge un sprite avec l'alpha et que tu as besoin de le découpé , bon courage le bricolage...

Fred se casse la tête c'est indéniable , mais il existe des librairie toute faite pour le multimédia comme par exemple
la SFML , qui écrase de loin les possibilité de PB en terme de multimédia / reseau / io.
( récemment j'ai fait des anaglyphes en temps réel avec la SFML )

hs: vla le shader si cela t'interesse :

Code : Tout sélectionner

#define textureW 1024.0

uniform sampler2D colorMap;

void main (void)
{

	float dec 			 = fract(10 / textureW);
	
	vec4  ColorLeft  = texture2D( colorMap, gl_TexCoord[0].st + vec2(dec,0) );
	vec4  ColorRight = texture2D( colorMap, gl_TexCoord[0].st - vec2(dec,0) );

	float red        = ColorLeft.x;
	float green			 = (ColorRight.y + ColorRight.z)/2;
	float blue			 = (ColorRight.z + ColorLeft.z)/2;

	gl_FragColor = vec4(red, green, blue, 1);;
}
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: PROGRAMMER DES JEUX

Message par blendman »

G-Rom a écrit :PB génère du bon code , stop. de là à dire que c'est du presque assembleur est une hérésie.
PB à d'énormes lacune , surtout au niveau du graphismes.
par exemple si tu charge un sprite avec l'alpha et que tu as besoin de le découpé , bon courage le bricolage...
Fred se casse la tête c'est indéniable , mais il existe des librairie toute faite pour le multimédia comme par exemple
la SFML , qui écrase de loin les possibilité de PB en terme de multimédia / reseau / io.
( récemment j'ai fait des anaglyphes en temps réel avec la SFML )
ce serait super si on pouvait utiliser la SFML avec PB, car j'ai vu quelques exemples et c'était plutôt intéressant :).
Warkering
Messages : 808
Inscription : ven. 08/janv./2010 1:14
Localisation : Québec, Canada

Re: PROGRAMMER DES JEUX

Message par Warkering »

Je confirme que la SFML donne de très bon résultat en C++, je vois pas pourquoi elle ne serait pas disponible sous PureBasic, je m'y attelle à l'instant! :wink:
Cependant, je n'ai pas de temps pour un Wrapper, donc faut pas trop compter sur moi avant fin mai.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: PROGRAMMER DES JEUX

Message par G-Rom »

problème , SFML est orienté objet , PB , procédurale , on peut toujours "aplatir" la SFML à du procédural , mais elle perdrais tout son sens.
Répondre