Newsgroup: it.comp.grafica
Titolo: Aiuto per un nuovo motore 3D in C++

Per tutti quelli a cui piace programmare e sputare sangue sul codice.....
Ciao,
  Ho appena iniziata a programmare un nuovo motore 3d in C++ e avrei
bisogno di aiuto da parte di chiunque sia interessato alla programmazione
3d... Vorre creare qualcosa di simile a quello che e' linux per i sistemi
operativi: un motore 3d scritto da diverse persone in giro per il mondo.
Strumenti di sviluppo:
- Visual C++ 5.0
- VTune 
Target platform:
- Win32 (Ma vorrei che il motore fosse portabile. es Linux, PlayStation,
Nintendo)
Feature:
- supporto per Glide, Direct3D, OpenGL attraverso driver 
- supporto per matematica floating point, fixed point, mmx, K63D math
attraverso driver
- free objects
- Luci dinamiche e colorate, luci legate a objects
Da aggiungere presto:
- texture e texture cache
- BSP Tree
Chi fosse interessato al progetto mi scriva via e-mail. Costruiro' una home
page il prima possibile e rendero' disponibili i sorgenti del motore.
GRAZIE A TUTTI!
Francesco E. Carucci
f...@freemail.it
				Z------------- usate questa
s75...@cclinf.polito.it


Ciao.
Onestamente non credo che un tale progetto sia una buona idea.
Scrivere un motore 3d (efficente) e' una bella impresa, ma non credo
che la collaborazione a distanza sia una buona idea.
Se in una routine mi serve una variabile cosa faccio, la dichiaro
globale o no? Se mi serve l'orologio di sistema quale funzione uso,
visto che magari altre 50 persone usano una funzione diversa (nel
senso che magari il tick e' gia stato preso e sarebbe inutile fare
un'altro accesso). Il tutto deve essere troppo ottimizzato.
Se il tutto non funziona, ma le singole routine vanno, come fai a
capire che l'effetto A, combinato con l'effetto B non funziona?
Dovresti conoscere profondamente il codice di entrambe, e sai meglio
di me che trovare un bug in una routine di un'altra persona e' quasi
piu' difficile che scriversela da solo.
Come faresti a muoverti nell'infinita' di variabili globali definite
dai diversi programmatori (che magari hanno lo stesso significato)?
Viceversa, a che scopo tenere locali un sacco di variabili che tenute
globali eviterebbero un sacco di conti?
Poi se una routine e' fatta con i piedi, cosa fai, la riscrivi tu? (o
viceversa se tu non sei in gamba, se la devono riscrivere gli altri).
Francamente mi vengono i brividi a pensare a un tale progetto.
Personalmente credo che l'ideale sia la realizzazione in 3 o 4 persone
molto affiatate e comunque in stretto contatto.
Spero francamente che i miei timori siano infondati e ti auguro di
riuscire nel progetto: sarebbe una bella soddisfazione.
Fammi sapere come procede il tutto (sarei anche interessato al codice,
driver compresi, che hai detto pubblicherai nella home page).
Personalmente sto' facendo la tesi, e non ho proprio tempo, mi
dispiace.
In bocca al lupo e  buon lavoro
				Ivan
-----------------------------------------------------
Ivan Pazzini
Undergraduate student of Computer Science of Bologna

 ...
Io non credo che il problema principale di questo progetto stia nello
sviluppo via rete. Gruppi di lavoro via rete gestiscono progetti anche
molto complessi (si pensi ad esempio a 
mozzilla.org
 o allo stesso
linux.org
). Societa importanti come la Adobe basano tutta la loro
produzione su task force distribuite in tutto il mondo. Tutto sta nello
stabilire regole e modalita' precise e funzionali mediante le quali
portare avanti lo sviluppo. Non sto qui' a descrivere queste
metodologie. Chi e' interessato puo' documentarsi, se vuole.
Credo invece che i problemi stiano altrove. Prima di tutto vorrei
rivolgere al nostro amico una domanda: che genere di motore 3D vuoi
realizzare? Mi spiego meglio: vuoi realizzare un nuovo motore di
renderizzazione oppure un sistema per la costruzione e la simulazione di
ambienti 3D?
-- 
Fabrizio Di Giuseppe
fabrizio.KILLME.@iride.com
(remove ".KILLME." from the address to send me a message)

 -- 
Ciao,
  mi trovo perfettamente d'accordo con Fabrizio e lo pregherei di indicarmi
dove 
e' possibile reperire queste informazioni. Per quanto riguarda il motore,
la mia 
idea e' quella di un motore per la costruzioni di ambienti 3D stile
Unreal... 
Avrei pero' bisogno di gestire oltre agli interni anche gli esterni...
Questo e' il 
motivo perche' una specifica importante del progetto e' la modularita'. A
questo
stadio di sviluppo, molto embrionale, l'importante e' la gestione
trasparente di
un numero piu' alto possibile di lib di rendering e la possibilita' di
aggiungerne
in seguito modificando il minimo possibile (possibilmente anche a run
time).
Rinnovo l'invito: chiunque fosse interessato al progetto si faccia vivo...
c'e' bisogno
di voi, perche' Unreal in realta' non e' neppure cosi' bello :)
Grazie
Francesco E. Carucci
f...@freemail.it