AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Réassort du coffret Pokémon 151 ...
Voir le deal

 

 D3D - La caméra (épisode 1)

Aller en bas 
4 participants
AuteurMessage
Mass
*Excellent utilisateur*
Mass


Messages : 3351
Localisation : Dans une canonnière wookie.
Projet Actuel : Monter des trucs et des machins

D3D - La caméra (épisode 1) Empty
MessageSujet: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptySam 3 Avr 2010 - 22:40

Bonjour à tous
Je commence mes premiers pas dans la 3d et... je galère déjà Sad
J'ai fait le code de caméra suivant dans le draw :
Code:
d3d_set_projection(x,y,10,lengthdir_x(200,direction),lengthdir_y(200,direction),10,0,0,10);
qui ne fonctionne pas. Pour tester si ça marche, j'ai aussi dessiné un floor :
Code:
d3d_draw_floor(0,0,0,room_width,room_height,0,t_floor,1,1);
Qui ne marche évidemment pas non plus.

Je sais que c'est des questions de débutant mais... j'arrive pô. D'où vient le soucis ? de la caméra ? du floor ? comment arranger ça ? pourquoi ça ne fonctionne pas ?
merci de l'aide

_________________
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
nicoulas
*Excellent utilisateur*
nicoulas


Messages : 6030
Localisation : Dordogne
Projet Actuel : Croustaface Tower Defense D3D - La caméra (épisode 1) Panicpr9

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptySam 3 Avr 2010 - 23:04

Code de caméra (je sais pas si ça va changer quelque chose mah bon) :

d3d_set_projection(x,y,10,lengthdir_x(200,direction),lengthdir_y(200,direction),10,0,0,1);

BTW, fais voir ton create event (celui ou t'initialise la 3D et ou tu définis les paramètres)
Revenir en haut Aller en bas
http://blithe.nd.free.fr/
Mass
*Excellent utilisateur*
Mass


Messages : 3351
Localisation : Dans une canonnière wookie.
Projet Actuel : Monter des trucs et des machins

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptySam 3 Avr 2010 - 23:22

Ben ça se limite à :
Code:
d3d_start();
d3d_set_hidden(true);
ce qui est dans l'aide de gm quoi

_________________
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
nicoulas
*Excellent utilisateur*
nicoulas


Messages : 6030
Localisation : Dordogne
Projet Actuel : Croustaface Tower Defense D3D - La caméra (épisode 1) Panicpr9

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptyDim 4 Avr 2010 - 9:43

Rajoute dans ton create event ou dans ton draw event : draw_set_color(c_white);

Et t'as essayé de changer ton code par celui que je t'ai donné ?
Revenir en haut Aller en bas
http://blithe.nd.free.fr/
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptyDim 4 Avr 2010 - 10:27

Il faut savoir aussi que tu doit faire ta projection avant d'afficher des objets 3d

EDIT :

petit exemple directe a mettre dans le draw
Code:

if( !variable_local_exists('create') )
{
    d3d_start()
    create = 1
    a = 0
    sp = 5
}

t_floor = -1//sprite_get_texture(spr,img)

a += (keyboard_check(vk_left) - keyboard_check(vk_right))*5
x += keyboard_check(vk_up)*lengthdir_x(sp, a)
y += keyboard_check(vk_up)*lengthdir_y(sp, a)

d3d_set_projection(x,y,10,lengthdir_x(200,a),lengthdir_y(200,a),10,0,0,1)

d3d_draw_floor(0,0,0,128,128,0,t_floor,1,1)

_________________
D3D - La caméra (épisode 1) Runningpotato1D3D - La caméra (épisode 1) TvF6GED D3D - La caméra (épisode 1) MdetltS
Revenir en haut Aller en bas
nicoulas
*Excellent utilisateur*
nicoulas


Messages : 6030
Localisation : Dordogne
Projet Actuel : Croustaface Tower Defense D3D - La caméra (épisode 1) Panicpr9

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptyDim 4 Avr 2010 - 10:48

Oui exact, il faut que ta caméra ait une depth supérieure à celle de tous tes objets 3D à afficher.
Revenir en haut Aller en bas
http://blithe.nd.free.fr/
Mass
*Excellent utilisateur*
Mass


Messages : 3351
Localisation : Dans une canonnière wookie.
Projet Actuel : Monter des trucs et des machins

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptyDim 4 Avr 2010 - 15:55

Ok, parfait ça marche mais deux soucis sont survenus :
Premièrement, je souhaite utiliser une texture en floor, j'utilise donc background_get_texture(background0), et mon floor est tout noir. Pourtant mes hrepeat et vrepeat sont bien à 1, et mon background est un multiple de deux...

Ensuite, un soucis un peu louche : impossible d'utiliser move_towards_point(x,y,speed).
Je l'utilise de cette façon : move_towards_point(lengthdir_x(200,direction),lengthdir_y(200,direction),speed);
or, ça ne marche pas dans le sens où ça bloque ma direction dès que j'appuye sur up ({speed=1}) ou down ({speed=-1}), jvois pas trop d'où ça vient v triste v
J'ai donc essayé de remplacer la fonction par :
x+=lengthdir_x(200,direction);
y+=lengthdir_y(200,direction);
mais ça fait un déplacement un peu bizarre, loin de la vue fps que je cherche Sad
quelqu'un a une idée ? désolé jsuis assez novice dans le monde de la 3d

_________________
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
supmaster004
Utilisateur confirmé: Rang *****
supmaster004


Messages : 2188
Localisation : x=23.256842 y=43.456879
Projet Actuel : Faire des parodies de jeux en 1h

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptyLun 5 Avr 2010 - 13:14

pour le floor tout noir, n'oublie pas:

draw_set_color(c_white)

dans le create event de ta caméra, parce que la couleur de base est c_black (d'où le sol noir gnii )


tiens, si tu veux, j'ai un moteur 3D ici:
http://www.yoyogames.com/games/84130-nightmare-3d-engine

pour faire des jeux style nintendo nightmare gnii

bon, en gros tu copies les scripts dans obj_cam et tu les colles dans ta caméra. fais pareil avec les déplacements de obj_player (mario)

N'oublie pas de changer les noms des objets.

Sinon, tu peux aussi utiliser le moteur complêtement, mais si tu débutes dans la 3D tu va juste faire du drag and drop d'objets sans rien comprendre. hap

_________________
Spoiler:

L'IRC du cbna: IRC du cbna
projets terminés: prédation mouse vs keyboard ACII OC_ nintendo nightmare fuyez lavanville
Revenir en haut Aller en bas
Mass
*Excellent utilisateur*
Mass


Messages : 3351
Localisation : Dans une canonnière wookie.
Projet Actuel : Monter des trucs et des machins

D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) EmptyLun 5 Avr 2010 - 15:57

Pour mon soucis de floor, c'est que j'ai mis une texture !
Code:
d3d_draw_floor(0,0,0,128,128,0,background_get_texture(background0),1,1)
background0 est un background de dimensions 64x64, et pourtant il m'affiche un floor noir qu'il est censé afficher que si la texture vaut -1 ouh

Ok je viens de comprendre, j'ai mis un draw_set_color(c_yellow) et ça marche impec, merci

Pour mon problème de direction c'est résolu c'était tout con, vu que move_towards_point modifie la direction ça marche pas trop :nah:

_________________
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
Contenu sponsorisé





D3D - La caméra (épisode 1) Empty
MessageSujet: Re: D3D - La caméra (épisode 1)   D3D - La caméra (épisode 1) Empty

Revenir en haut Aller en bas
 
D3D - La caméra (épisode 1)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Jeux vidéo (Partie 2)
» Star Wars Episode I
» Camera 3d
» camera
» CBNA Crafting - Episode 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: