Expeditions: Samurai veut révolutionner le RPG tactique avec une aventure entièrement jouable en coop
j´ai commencé a regarder le C/C++... c super comme language... sauf que question affichage, c pas trop ca..... je sais qu´il faut creer un pointeur sur l´@ de l´ecran et trifouiller la dedans...... j´ai un cour complet la dessus...
le seul problème, c que j´arrive pas, justement, a creer ce pointeur.... c quoi l´adresse de l´ecran? faut utiliser un pointeur sur quel type de variable? a la limite, si quelqu´un pouvais m´envoyer directement la ligne de code de declaration du pointeur sur ecran et m´expliquer vite fait comment l´utiliser après, je serai super super content... =))))
bye et merci d´avance.
Quel systeme d´exploitation utilises tu ?
windows 98 se, MS-DOS 5(je crois) et/ou LINUX mandrake 8.1...mais c surtout sous msdos que ca m´interesse pour l´instant... voila voila... =)
char *ecran = (char *) (0xA0000000L);
mais je te conseil d´essayer la librairie SDL(www.libsdl.org).
arf, g oublie les explications! donc pour faire un resume:
bon ceci c´est pour le mode 13h, soit 320*200 en 256 couleurs(en fait c´est une palette)(on supposera que tu sais comment passer dans ce mode graphique)
donc la memoire video est adressee lineairement mais ca doit etre explique dans ton tut.
et pour faire vite:
void putpixel (int x, int y, unsigned char coul)
{
ecran[(y*320)+x] = coul;
}
voila, c´est tout con!
il ne faut jamais faire des pointeurs comme ca, c trop moche et trop dangereux et tu es meme pas sur ke la memeoire video est la sur tout les PC !de plus les programme dans des fenetres console ne sont pas des programmes MS DOS mais bien windows et 32 bits !
de plus si tu as windows 98 tu as DOS 8 et pas DOS 5.
il faut utiliser une librairie graphique c obligé, tu peu la faire toi meme bien sur mais ca demande trop de documentation difficile a trouver.
merci bien mon p´tit nain!!! le problème, c qu´en fait, quand je fais ca, il m´envoie chier parceque je cast un long en char* ...je crois que c un truc du style...... attends.. je lance mon 486 magique la ou j´ai tous mes progs en C.... =)
lightness1024: c bien gentil tout ca... mais c koi la bibliothèque? j´ai deja essaye avec graphics.h mais c a chier... on peu pas depasser les 16 couleurs.... =( si tu pouvais m´indiquer une bibli bien.....
ouais c ca... il veux pas me caster un unsigned long (A0000000L) en un char*.... ca viens d´ou?
je suis vraiment idiot?
si oui, je peu trouver ou un tutorial spécial gro naz?
(bouuuuuuuuuhouhou j´en n´ai marre.... =( )
ouais enfin... si vous savez d´ou ca peut venir, j´en serai pas mecontent du tout...
et encore merci pour votre aide!!!
(au passage, j´ai aussi un problème en java... ca serai cool si quelqu´un fort en java et qui utilise linux ET windows pouvais me contacter sur mon autre forum ou par mail... merci!!!)
héhé le nain posteur. je suis allé voir sur le site que tu m´as passé... ca a l´air plutot complet comme lib.. mais c justement, c un peu trop complet... je voudrai bien comprendre justement comment on fait tous ce que propose cette librairie (je sais chui un peu mazo... mais bon on me refera plu...) c pour ca que j´aimerai bien réussir avec cette histoire de pointeurs.......
merde.. j´arrete pas la... ma version de MS-DOS c la 6.22.
bon j´y vais moi...chui deja a la bourre.....
je me repète, mais encore merci pour votre aide.. =)
6.22 c la meilleure version de DOS qu´il n´y a jamais eu.
ok tu veu une bonne lib, et ben je te donne la meilleure: DirectX8.1 par compliqué ![]()
et n´allez pas vous rebeller en disans non c´est OpenGl parce que, que dalle ! telechargez d´abord les SDK pour vous rendre compte du nombre de fonctions avant de parler.
OpenGl n´est meme pas orienté objet, on a droit a rien aucunes fonction par exemple pour faire un pauvre produit scalaire tout a été prévu pour du langage C et ca ne gere pas les fonctions comme le Multisampling ou le sphérical environement mapping et autres...
sinon si vous dites OpenGL 2 ok, mais comme ce n´est pas encore sorti ca compte pas.
bref bien sur ca c une lib 3D tu me diras, mais oui mais c pas pour ca kon peu pas s´en servir en 2D aussi ! il suffit de n´utiliser ke faire un format de vertex RHW donc de ne pas tenir compte du Z: le réciprocal homogénéous W.
mais c vraiment tres lourd comme lib rien qu´en initialisations si j´ai envie de faire un bete rectangle ki se déplace: oui ok bien sur, pkoi tu disais ke graphics.h ne servait a rien ?
16 couleurs ? non faux, tu doit pas avoir utilisé le bon mode ou alors tu as une tres ancienne version.
je t´assure k´avec graphics.h on peut faire deja pas mal.
sinon je ne sais pas il faut chercher une autre lib, mais le mieu c kan meme de la faire soi meme ![]()
ben pour ton probleme, je sais pas, j´utilisais le mode 13h en pascal et j´ai recupere ces morceaux de code dans un tut, mais normalement y a pas de raison que ca ne marche pas vus qu´un executable etait fournit avec! et je suis un peu presse! j´ai donc pas trop le temps de chercher, desole!
mais les programmes comme ca, marchent bel et bien sous windows aussi!
mais ne crois pas que SDL soit une librairie complete au sens que tu lui donne! elle te fournit juste un acces au matos! apres, c´est a toi de te demerder!
mais contrairement a Lightness, je pense pas que DirectGraphic(bah vi, comparons ce qui est comparable! DirectX c´est po une lib 3d) soit si loin devant qu´OpenGL! ils sont plutot equivalent!(surtout que je pense qu´avec les extensions OpenGl sait gerer aussi tout ca)
et puis, le produit scalaire n´est pas tres difficile a se faire soit-meme!
d´autant plus je ne vois pas en quoi ca gene que les fonctions soient prevus pour du C!
donc, ce que je te conseil pour ma part, c´est d´utiliser SDL. Car cela te permettra de faire un jeu multi-plateforme, SDL peut servir d´interface pour utiliser OpenGL(si tu souhaite utiliser la 3d), tu auras en plus toute une panoplie de fonction pour pouvoir gerer tout ce qui est audio, peripheriques, reseau(avec la lib SDL_net). bref, avec ca, ton jeu pourra marcher aussi bien sous windows que sous linux!
je me demande qui autre que vous voudrait JOUER sous linux. linux ce n´est pas une plateforme utilisée par des joueurs, mais par des programmeurs ou des admin reso ou n´importe koi tout ce ke vous voulez mais un jeu sous linux c ridicule.
enfin bon je dis ca, mais dans les débuts de l´informatique on disait bien: les PC ce n´est pas des jouets ! c´est fait pour travailler ! ok finalement ben les jeux c devenu une belle escuse pour acheter un ordi finalement.
donc peut etre ke les moeurs a propos de linux sont en train de changer et ke je ne le voit simplmement pas !
ok pour ca.
bon maintenant pour OpenGL:
ahah ! erreur !
un produit scalaire non ce n´est pas difficila a faire soi meme je le reconnais mais attention !
je repete encore attention: ce n´est pas difficile a faire avec des pointeurs vers le heap de l´appli. mais par contre, avec des registres MMX alors la c´est autre chose !
et oui ! les prodtuis scalaires sont optimisés pour les nouveaux processeurs ce qui permet une rapidité extreme en execution si on utilises la librairie pour les faire, si on utilise une fonction perso, on perd de la vitesse.
et voila c tout ce ke j´avais a dire.
et a propos: si c´est mieux orienté objet c´est bcp plus joli a programmer surtout kan ont prog en C++ on aime bien utiliser les classes et les operateurs overloadés sur les matrices par exemple pour faire des multiplications, tout est deja inclu dans D3D! par contre dans OpenGL alors la: fonction perso oblige...
wouahla.... ya eu de la reponse... =)
ca fait plaisir!!!!
alors tout d´abord, nico, OUAIS VIVE LINUX!!!!!!
lightness, je veux pas jouer sous linux... mais programmer... en l´occurence, je pense que pour apprendre a programmer, il faut se faire plaisir un minimum.... et donc, en ce qui me concerne, programmer des petits jeux...... mais c pas le fait de jouer avec qui me lpaira...c plus de le develloper et de le voir tourner après... enfin voila koi c qu´une question de gout....
sinon, le nain, merci pour tes renseignements, il faut que je retourne sur le site que tu m´a passé, je crois qu´il y avais des tut dessus.... je pourrai me foutre le nez la dedans...
ah ouais pis lightness, je verrai pour essayer de trouver une autre lib graphics.h c vrai que la version du compilateur c que j´ai est plustot depassée... je l´ai pompée a l´iut.... alors ca veux tout dire.... =)
sinon, merci a tous pour votre aide et si vous avez d´autres conseils sur le graphic (essentiellement 2D je vous rappelles que je commence seulement...) ou des petits problèmes que vous avez rencontré etc... merci de me tenir au courant ca peu toujours servir!!! =)
bye et encore merci!