CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Primitives et formules mathematiques

maskware
maskware
Niveau 8
31 octobre 2003 à 11:21:20

Bonjour. J´aurai aimé savoir si quelqu´un connaissait un site qui regroupait des formules mathematiques qui prennent en parametre les tailles et qui rendent des vertices pour faire des primitives telles que des spheres, des cubes, des escaliers a spirale, etc...

JeanYvesYves
JeanYvesYves
Niveau 10
31 octobre 2003 à 12:54:11

ça doit se trouver !

mais tu auras besoin de manipuler des vecteurs, des produits scalaires et vectoriels.

c´est juste une logique a connaitre et apres tu modélises ce que tu veux.

Si tu veux du lissage de courbe, cherche " Bézier" ou " B-spline"

Lightness1024
Lightness1024
Niveau 10
31 octobre 2003 à 13:37:40

DirectX en a deja des implémentées comme ca.

mais franchement pour faire ce genre de trucs c pas bien dur.
invente les tes fonctions

maskware
maskware
Niveau 8
31 octobre 2003 à 14:55:50

- J´ai deja ecrit dé fonctions pour lisser mes courbes mais la n´est pas le pb, je cherche des fonctions pour faire des primitives.

- Je code independemment de l´API g besoin de les implementer moi meme. J´ai besoin des vertices pour faire des operations de CSG ensuite :]. Je ne demande pas du code mais juste des formules mathematiques, encore pr un cube ca peut se trouver mais pr une sphere ? un cone ? escalier lineaire ? a spirale ? incurvé ? Je peux pas l´inventer ca...

Lightness1024
Lightness1024
Niveau 10
03 novembre 2003 à 17:13:25

sisi tu peut bien l´inventer !

" Je code independemment de l´API g besoin de les implementer moi meme"

ok !

bon alors je vais t´inventer un cone de ce pas, c´est une surface, donc en équation paramétrée il faut 2 parametres, voila ce que ca donne:

x = cos t * G * z * I
y = sin t * P * z * I

z est l´altitude ( a faire varier)
t un parametre ( a faire varier)

G = demi grand axe
P = demi petit axe
pour un cone a base ellipsoidale G ! = P
pour un cone a base circulaire G = P
dans ce cas G et P representent le RAYON
I = coefficient d´incurvation du cone

par exemple, a l´altitude z = 1 si I = 2 alors le rayon sera de deux fois G ( ou deux fois P)

pour tracer une surface pareille, ben tu fais deux boucles imbriquées tu fais varier les 2 parametres ( t et z) entre les valeurs que tu veux.
t c´est un peu comme la précision angulaire ( nombre de cotés que ton cone aura) et z la precision verticale, a la rigeur 2 valeurs seulement suffisent pour ne pas trop avoir de polygones.

tu vois bien que ca s´invente sans probleme de genre de trucs !

pour une sphere:

x = cos t * cos(arcsin(t2)) * rayon
y = sin t * cos(arcsin(t2)) * rayon
z = t2 * rayon

2 parametres: t et t2
tu dois faire varier t2 SEULEMENT entre -1 et +1
sinon je sais pas ce ke ca fait.
d´ailleur je sais meme pas si ca marche comme formule mais ca doit pas bien etre dur de vérifier qq points.

t represente la resolution angulaire, et t2 la resolution verticale.
avec ca tu auras une shpere a facettes trapezoidales.
si tu veux une sphere a facettes pentagonale ( geosphere) ben je c pas comment fo faire c plus compliqué.

pour l´escalier je crois ke c encore plus simple, il faut 2 courbes: une droite et une hélice.
de parametrisations:

x = 0
y = 0
z = t

et l´helice:

x = cos ( x*t) * rayon
y = sin ( x*t) * rayon
z = t

attention dans les 2 courbes ont parle du meme parametre t.
x est une CONSTANTE comme rayon, sauf ke elle represente le nombre de radians que l´escalier aura tournés en montant de 1 unité.

tu fais varier t entre les altitudes qye tu veu.
si tu veux une surface lisse ( un tobogan en colimasson) tu relie simplement les points par des polygones a 4 cotés ( ou 2 triangles koi)
si tu veu un vrai escalier il faut juste prendre le point d´une 2eme helice en quadrature avance d´equation:

x = cos ( x*t+l) * rayon
y = sin ( x*t+l) * rayon
z = t

l est l´angle en radian qu´aura la largeur d´une marche.

et la c encore plus simple que le toboggan, car chaque marche est un triangle relié par les 3 points que donne les 3 courbes pour un meme parametre t !
hyper simple pas vrai ! !
( par contre fais gaffe a l´orientation quand tu relies tes points, a cause du culling tu risque de pas voir les marches d´en haut ou d´en bas, ou alors désactive le culling, ou carrément fais 2 triangles de rotation oposées)

pour une spirale, tu veux koi ? c pas une surface ca ? une courbe ? tu veu l´equation de la courbe ?
courbe=>un seul parametre t:

x = cos t * t
y = sin t * t
z = 0

tu vas pas me dire ke tu pouvais pas trouver ca tout seul kan meme ?

et une spirale uncurvée:

x = cos t * t
y = sin t * t
z = t

incurvée en parabole ?

x = cos t * t
y = sin t * t
z = t^2

Lightness1024
Lightness1024
Niveau 10
03 novembre 2003 à 17:17:11

pour l´escalier g oublié de préciser, dans ta boucle ki fais varier t pour calculer la position des points, le pas ( step) de la boucle représente l´ecart entre chaque marche.

Lightness1024
Lightness1024
Niveau 10
06 novembre 2003 à 13:33:14

je up pour ke l´auteur voit la reponse ca serait bete d´avoir posté tout ca pour rien.

maskware
maskware
Niveau 8
06 novembre 2003 à 19:51:26

ok merci de la reponse, ca allait passer aux oubliettes :)

Je capte pas pr le cone, qu´est ce que t´entends par precision verticale ?

Pr les spirales je parlais d´escaliers a spirales et d´escaliers incurvés. L´equation que t´as créé quel type d´escalier ?

ps: depuis quand les geospheres ont des faces pentagonales ? ! ; )

Lightness1024
Lightness1024
Niveau 10
08 novembre 2003 à 13:56:28

"Je capte pas pr le cone, qu´est ce que
t´entends par precision verticale ? "

ben comme z c´est l´altitude, si tu calcule les coordonnées des points du cone pour 8 z differents par exemples, et bien tu auras découpé ton cone en 7 segments de hauteur, c´est pour ca que je parle de " precision" verticale, mais pour un cone ca sert a rien de calculer plus de 2 z, et donc n´avoir q´une seule segmentation verticale.

"Pr les spirales je parlais d´escaliers a
spirales et d´escaliers incurvés.
L´equation que t´as créé quel type d´escalier ? "

ca fait des escaliers en hélice, pas en spirale.
on dit aussi en colimasson.
pour faire une spirale c pas dur faut multiplier le rayon par la hauteur.

" ps: depuis quand les geospheres ont des faces pentagonales ? ! ; ) "

ben depuis ke 3dmax les fait comme ca.
mais sinon en réalité j´en sais rien, une géosphere c juste une sphere sans poles non ?
donc ca marcherait bien avec des triangles ou tout autre polygone ayant un nombre impair de coté c ca ?
enfin chai pas je suis pas expert des spheres :)

maskware
maskware
Niveau 8
09 novembre 2003 à 23:32:12

J´ai tjrs pas capté la precision verticale, un cone ca n´a qu´une seule variable sur l´axe des z, celle de la distance entre le centre du cercle de la base jusqu´a la hauteur ( en considerant que c´est utilisé pour l´axe vertical), qu´est ce que ca ferait un cone avec 8 z differents ?

Pour faire plus simple avec les escaliers, ca en créé un comme ca ( incurvé) http://udn.epicgames.com/pub/Content/UnrealEdInterface/button_primitive_curvedstair.jpg ou comme ca ( spiral) http://udn.epicgames.com/pub/Content/UnrealEdInterface/button_primitive_spiral_stair.jpg ou qqc d´autre ?

3DSMax fait les gesopheres avec des faces triangulaires ; ) Sinon wé c´est sans les poles, et pour le nombre de cotés de polygones, ca depen de la tesselation, on peut faire des geospheres avec des hexagones. Y´a une image ici http://www.bergen.org/AAST/Projects/3DSMaxTutorial/spheres.gif

maskware
maskware
Niveau 8
09 novembre 2003 à 23:33:03

Mais en fin de compte je suis pas tellement plus avancé qu´au debut :) je crois que je vais faire les primitives sous 3ds et les charger ds l´editeur

Lightness1024
Lightness1024
Niveau 10
10 novembre 2003 à 17:58:09

" qu´est ce que ca ferait un cone avec 8 z differents ? "

ca ferait visuellement exactement le meme qu´un autre. par contre le moteur devrait rendre 8 fois plus de polygones pour l´afficher.

" Pour faire plus simple avec les escaliers, ca en créé un comme ca"

exactement.
par contre il n´est pas fermé, les marches sont plates. mais c possible et meme facile de le fermer suffit de relier des polygones avec le sol.

" je vais faire les primitives sous 3ds et les charger ds l´editeur"

je pense que c´est une bonne solution.

Lightness1024
Lightness1024
Niveau 10
26 novembre 2003 à 21:35:05

ah au fait, je up ca.
MASkwarE > ca t´a servi finalement ?

gollumkawder
gollumkawder
Niveau 10
26 novembre 2003 à 21:49:19

question à MASkwarE, Lightness1024 vantait les mérites de ton moteur, et j´aimerais bien voir à quoi il ressemble !
si tu avais des screens, des betas où bien une version à me filer ça serait sympa
merci ++

gollumkawder
gollumkawder
Niveau 10
27 novembre 2003 à 17:11:17

:up:

maskware
maskware
Niveau 8
27 novembre 2003 à 22:34:24

En fait non :) j´ai créé un petit loader qui charge les meshes aditionnés en format . t3d ( celui d´unreal). Apres j´ai créé une cinquantaine de primitives sous unrealed pour couvrir tous les parametres possibles ( c´est assez chiant pour les escaliers a spirale et incurvés, y´a 3 parametres a changer ! ) et j´ai tout chargé/converti dans mon format de brushes. C´est assez roots comme technique mais d´un autre coté ca m´evite d´avoir a trop dealer avec les coordonnées de textures vu qu´elles sont exportées elles aussi ( pas une mince affaire en codant ! )

Lightness1024
Lightness1024
Niveau 10
28 novembre 2003 à 18:53:30

oui, je connais :)

svrt
svrt
Niveau 7
28 novembre 2003 à 18:56:34

salut tous le monde.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment