Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
3D object
Nuovo argomento   Rispondi    Indice del forum -> Programmazione
Precedente :: Successivo  
Autore Messaggio
jinkazama82it
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 20/11/07 17:51
Messaggi: 162
Residenza: PC - Residenza estiva PS Vita

MessaggioInviato: 16 Mag 2011 10:30    Oggetto: 3D object Rispondi citando

Allora recentemente un amico mi ha posto una domanda, sinceramente io non gli ho saputo rispondere non sono poi così ferrato nella programmazione da autodidatta e raramente mi avvicino a questo tipo di cose.
comunque costui mi aveva chiesto se era possibile con il solo C o C++ creare un oggetto 3D e se si come.
io gli ho risposto che in teoria tutto è possibile ma in pratica di non saper come aiutarlo in tal senso.

una cosa è certa si deve creare una classe che gestisca i vertici dei poligoni disegnati a schermo e quindi il loro posizionamento in prospettiva creando difatto l'asse z in quello che è uno spazio a 2 dimensioni come lo schermo del pc o della psp (io almeno mi diletto nella programamzione per PSP), però apparte la mia vaga spiegazione (probabilmente neanche tanto corretta) non saprei come aiutarlo non conoscendo difatto i calcoli che vengono fatti per la rotazione di un oggetto 3d (purtroppo le mie conoscenze matematiche si fermano alla III media) e per ruotare un oggetto 3D senza deformarlo (quindi mantenerne le proporzioni) probabilmente ci sono calcoli matematici molto complessi da fare, senza contare poi che un oggetto 3D può entrare in collisione co un altro oggetto 3D i lche complica ulteriormente le cose.

ammetto che anche a me la cosa interessa parecchio, quidi se qualcuno mi/ci può illuminare non mi/ci dispiacerebbe affatto.

molti dicono ma che t ne frega di conoscere le basi usa un motore grafico 3D e chissene, beh io come il mio amico siamo piuttosto intransigenti in questo in quanto la sete di conoscenza è tanta e anche se difficile per chi non ha determinate conoscenze matematiche, sarebbe davvero bello poter dire io so creare un oggeto 3D senza usare una libreria esterna o un motore grafico fatto da altri.
Top
Profilo Invia messaggio privato MSN
freemind
Supervisor sezione Programmazione
Supervisor sezione Programmazione


Registrato: 04/04/07 20:28
Messaggi: 4643
Residenza: Internet

MessaggioInviato: 16 Mag 2011 21:21    Oggetto: Rispondi citando

La teoria matematica che sta dietro al tutto è quella della geometria 3d però poi per buttarsi a livello di grafica computerizzata ci vuole qualche cosa di più.
Io non conosco librerie gratis e non per gestire questo problema però in giro si trovano.
Tieni conto che occorre anche stabilire cosa intendi per oggetto 3d: un semplice disegno (ad esempio un cubo disegnato con delle linee) oppure intendi ragionare a 'mo di modellatore solido?
Insomma, la grafica è una roba cazzuta e i motori di rendering non sono semplici.
Top
Profilo Invia messaggio privato
jinkazama82it
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 20/11/07 17:51
Messaggi: 162
Residenza: PC - Residenza estiva PS Vita

MessaggioInviato: 16 Mag 2011 23:17    Oggetto: Rispondi citando

per oggetto 3D intendo un oggetto 3D XD, poco importa se è un cubo una piramide una sfera o chi più ne ha più ne metta, comunque si intendo un solido.

come gia scritto non mi interessa usare librerie fatte da altri ma volevo capire cosa c'era dietro, cioè come disegnare quel solido da poter poi far ruotare per farne vedere le varie facce.


purtroppo da autodidatta mi mancano molte conoscenze sia di matematica che di programmazione che potrebbero portarmi alla soluzione solo per quello chiedevo aiuto, una volta che conosco la meccanica svilupparla in qualcosa di più complesso per me non è un problema (e di questo se ne sono stupiti in molti).
Top
Profilo Invia messaggio privato MSN
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11566
Residenza: Tokelau

MessaggioInviato: 03 Giu 2011 16:32    Oggetto: Rispondi

In pratica vuoi fare un renderer software. Bella sfida, non c'è che dire Smile
Inizia con il vedere come puoi trasformare una terna di valori (x,y,z) in una coppia (x,y), ovviamente entra in gioco anche il punto di vista (x0,y0,z0) e la direzione dell'osservazione, che è anche questa un vettore 3D.

Fatto questo potrai disegnare dei punti sullo schermo (2D) specificandone la posizione spaziale (nel 3D). Puoi fare effetti tipo il disegnare una galassia, e cambiando il punto di vista (POV) puoi farla 'girare' (in realtà gira l'osservatore intorno ma che cambia?)

Devi cercare con Google (o in biblioteca/libreria) tutto ciò che parla della programmazione grafica in 3D. Una volta avevo letto un libro dal titolo tipo 'grafica 3d in C' ed era molto chiaro... chissà se esiste ancora Rolling Eyes
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Programmazione Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi