Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Roll the camera? | |
| | Auteur | Message |
---|
treehouse
Nombre de messages : 28 Localisation : UK Date d'inscription : 21/10/2013
| Sujet: Roll the camera? Dim 27 Oct 2013 - 12:39 | |
| Est-il possible de faire pivoter la caméra dans les scènes 3D? On peut changer la position à laquelle elle vise, en donnant x, y et z coordonnées, mais je veux dire maintenant que point_position et tourner la caméra autour de l'axe entre la caméra et son point_position.
Ce mouvement peut être modélisé en déplaçant tous les objets de la scène, mais qui nécessite calcul complexe et beaucoup de traitement. Il serait utile de faire un simulateur de vol. Lors de la modélisation d'un mouvement panoramique, il suffit de déplacer les coordonnées de point_position.
Une commande pourrait être ajoutée à la langue?
Merci | |
| | | Froggy One
Nombre de messages : 598 Date d'inscription : 06/01/2012
| Sujet: RE Dim 27 Oct 2013 - 14:15 | |
| I don't know if it helps, but in this example, it is the camera that moves, not the object itself... Je ne sais pas si ça va t'aider, mais dans cet exemple c'est la caméra qui bouge et non l'objet... - moving the camera:
scene3d 1:full_space 1 cam_z_position 200 3d_box 1,64,32,16 3d_color 1,248,91,6 dim a,b,c for a= 200 to 600 step 10
cam_position a,200,200 point_position o3d_x_position(1),o3d_y_position(1),o3d_z_position(1) wait 100
next a
Have a good day ! Bonne journée ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Roll the camera? Dim 27 Oct 2013 - 14:28 | |
| Froggy One donne la solution:
CAM_POSITION permet de déplacer la caméra, tout en gardant la visée sur le même point. C'est l'effet d'une caméra montée sur une voiture qui se déplace, tout en filmant un objet fixe.
POINT_POSITION permet de changer la direction de visée de la caméra, alors que la caméra elle-même reste fixe. C'est l'effet de la rotation de la caméra autour d'un ou de plusieurs axe sdéterminée par les coordonnées du point visé.
Froggy One gives the solution:
CAM_POSITION moves de camera, but keeping the aimed point. That's the effect of a camera mounted on a travelling car, but steadily filming a fixed object.
POINT_POSITION changes the direction of the vision of the camera, keeping the camera pinned at a fixed point. That's the effect of rotating the camera arround one or more of the axes, determined by the point coordinates. | |
| | | treehouse
Nombre de messages : 28 Localisation : UK Date d'inscription : 21/10/2013
| Sujet: Re: Roll the camera? Dim 27 Oct 2013 - 15:16 | |
| Merci à vous deux. Je m'attends à ce que la traduction de ma question est difficile (j'ai bien compris votre réponse ). Dans toutes ces situations, la caméra reste horizontal. On ne voit pas l'horizon tourner. C'est l'effet désiré, comme quand un avion s'incline (rouleaux, plongeant les ailes). Pour cela, il faut faire des calculs complexes et déplacer tous les objets, eux aussi tournant sur leurs propres axes. Je crois que j'ai raison, mais je pensais que je pourrais avoir manqué la commande dans la documentation. Si elle n'existe pas, je me demande s'il ne serait pas possible d'ajouter. Il peut être fait avec des objets reliés par 3d_chain, aussi, mais j'ai trouvé que 3d_chain ne fonctionne pas avec les objets créés dans le programme. Il fonctionne avec des objets 3d_mesh. | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Roll the camera? Dim 27 Oct 2013 - 15:21 | |
| Bonjour Treehouse Si tu as une des dernières version de panoramic : 0925i2, tu as les instructions qui te permettent d'avoir l'effet désiré! voici un programme exemple: If you have one of last version of panoramic: 0925i2, you have the instructions which allow you to have the wished effect! Here is a program example: - Code:
-
' ******************************************************************** ' ************************* KEYBORD COMMANDS ************************ ' ******************************************************************** ' * TOUCHE ESC ==> END PROGRAM:............................ CASE 27 * ' * TOUCHE FLÈCHE GAUCHE ==> TURN LEFT:.................... CASE 37 * ' * TOUCHE FLÈCHE HAUTE ==> MOVE FORWARD:.................. CASE 38 * ' * TOUCHE FLÈCHE DROITE ==> TURN RIGHT:................... CASE 39 * ' * TOUCHE FLÈCHE BASSE ==> MOVE BACK:..................... CASE 40 * ' * TOUCHE "B" ==> LOOPING the loop downward:.............. CASE 66 * ' * TOUCHE "H" ==> LOOPING the loop upward:................ CASE 72 * ' * TOUCHE "V" ==> TO ROLL ON THE LEFT:.................... CASE 86 * ' * TOUCHE "N" ==> TO ROLL ON THE RIGHT:................... CASE 78 * ' * TOUCHE "O" ==> RETURN START POINT:..................... CASE 79 * ' * TOUCHE "C" ==> TOWARDS THE CONE:...................... CASE 67 * ' * TOUCHE "S" ==> TOWARDS THE SPHERE:..................... CASE 83 * ' ******************************************************************** dim vrot,z:vrot=1 scene() while scancode <>27 if scancode=86 then cam_roll vrot*-1 :' roll on the left if scancode=78 then cam_roll vrot :' to roll on the right if scancode=37 then cam_turn vrot*-1 :' turn left if scancode=39 then cam_turn vrot :' turn right if scancode=38 then cam_move 0.1 :' move forward if scancode=40 then cam_move -0.1 :' move back if scancode=66 then cam_pitch vrot*-1 :' Make a looping the loop by falling towards the ground if scancode=72 then cam_pitch vrot :' Make a looping the loop by climbing(soaring) towards the sky if scancode=79 then cam_position 0,2,-1 :' Return start point if scancode=67 then point_object 6 :' camera towards the cone if scancode=83 then point_object 5 :' camera towards the 1/2 red sphere end_while terminate sub scene() full_space 0:scene3d 1:hide 1:full_space 1:color 1,0,0,200 cam_position 0,2,-1:point_position 0,2,0 3d_plane 3:3d_scale 3,40,40,1:3d_x_rotate 3,90:3d_y_position 3,0:3d_color 3,0,150,0 3d_box 4,8,3,1:3d_position 4,-8,1.5,-5:3d_y_rotate 4,90 3d_sphere 5,2:3d_position 5,8,0,-4:3d_color 5,255,0,0 3d_cone 6,10,4:3d_position 6,0,5,-50:3d_color 6,200,200,0 3d_cylinder 7,10,3,3:3d_position 7,0,5,52:3d_color 7,0,200,200 show 1 end_sub | |
| | | treehouse
Nombre de messages : 28 Localisation : UK Date d'inscription : 21/10/2013
| Sujet: Re: Roll the camera? Dim 27 Oct 2013 - 18:01 | |
| Wow! C'est fantastique, exactement ce que je veux. J'ai déjà 0925i4. Il est juste que cam_roll, cam_pitch, cam_move et cam_turn ne sont pas encore dans le manuel de référence. Un grand merci, bignono. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Roll the camera? Dim 27 Oct 2013 - 18:49 | |
| Bignono is really Big | |
| | | treehouse
Nombre de messages : 28 Localisation : UK Date d'inscription : 21/10/2013
| Sujet: Re: Roll the camera? Lun 28 Oct 2013 - 22:21 | |
| C'est vrai? Certainement, ça fait mon code moitié de la longueur qu'il était. Y at-il des fonctions ainsi? En particulier, je voudrais cam_position(). J'ai essayé, mais il n'a pas été reconnu. Avec lui, je pouvais continuer à mettre un objet d'observateur à cam_position, et utiliser o3d_collision() pour vérifier si le «pilote» s'est écrasé. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 29 Oct 2013 - 0:25 | |
| | |
| | | Contenu sponsorisé
| Sujet: Re: Roll the camera? | |
| |
| | | | Roll the camera? | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |