Os habeis echado una ojeada a las fuentes del unreal (las q dejan publicas) ?. q os parecen ? os funciona el driver de opengl? os parece bueno el diseño?
saludos
q pasa? solo miramos los tutos de nehe y los hola mundo ? XDD
Me las bajé hace mucho tiempo y en general me gustaron mucho. Mantienen un buen diseño OO difícil de ver en juegos comerciales( al menos con algo de código público).
Recomiendo buscar el código del NoOneLivesForever... está en mi rack que se suicidó... o más bien estaba, me temo :llorando:
To build the NOLF source v1.003 you will need:
· Microsoft Visual C++ 6.0 (with service pack 3 installed)
· Microsoft's DirectX 8 SDK
· 400MB free disk space
joder xDDDD 400 megas ?
uhmmm :o
Weno, nunca lo llegué a compilar tan siquiera. Con echarle un ojo al código.... :jaja:
Me confundi al pegar el link a los fuentes el bueno es este:
http://unreal.epicgames.com/UnrealPubSrc224v.zipthx repi ;**
Hmm.. No me funciona ese link, lo pusiste bien esta vez? :P
Vale, no me funciona ni ese ni ningun otro, por lo que supongo que el problema es mio jejejee
Citarq pasa? solo miramos los tutos de nehe y los hola mundo ? XDD
teneis crucificao al nehe.. si os parecen tan malos poner los vuestros como hizo el y qe decida la gente.
NeHe rulez!, si no hubiera sido por él... tendríamos muchos menos tutos ahora, incluidos los tutos de DX.
Al que hay que crucificar es a NeXe, en teoría NeHe para DX... pero el chaval no tiene nada de idea, aunque la intención sea buena.
Por cierto, los tutoriales de NeHe para DX bien hechos, están en www.drunkenhyena.com .Éstos al menos son decentes ;)
No es q los tutos de nehe sean malos es q a la larga son malisimos xDD. Lo digo por q no reutiliza su codigo, usa c++ como si fuera c y tanto comentario lo unico q hace es joder el codigo. Por no decir q la mitad de tutos no son suyos y q algunos son copias directas de codigos de otros autores sin comentar las fuentes, mas concretamente el tutorial 36 [
http://nehe.gamedev.net/tutorials/lesson.asp?l=36 ].
saludos
el no dice qe sean suyos, asi qe cual es el problema??
tendra derecho el tio a poner en su web tutos de otros no? XDD
si fuese xqe fuera diciendo qe son suyos.. pero deja bien clarito de qien es cada cosa..
No, una cosa es decir q no son suyos y citar la fuente y otra cosa es decir q no son suyos y no citar la fuente, cuando en el codigo original se especifica claramente q si se usa el codigo se debe dar credito al autor. Supongo q eso es cuestion de honor, pero ahi nehe queda a a altura del betun.
saludos
¿y de quien es el articulo?
¿Por qué no le avisáis de que mencione las fuentes?
El articulo es de un tal rIO, es sobre radial blur. Es tan descarao el nehe como el rio a mi modo de ver.
Por cierto, en ls fuentes del unreal en la clase base q implementa el driver para el render, primero pone los metodos q necesita y despues pone 8 metodos para rellenar la virtual table ( no se exactamente como se llama, es ese vector de punteros a funciones para implementar metodos virtuales). Sabeis por q hace eso? con q fin
saludos
ethernet yo no te entiendo, nada mas abrir la pagina pone:
Hi! I'm Dario Corno, also known as rIo of SpinningKids. First of all, I want to explain why I decided to write this little tutorial. I have been a scener since 1989. I want all of you to download some demos so you understand what a demo is and what demo effects are.
el source no es del tal dario? qe problema hay entonces?
seryu: elñ source del tutorial es de rIO pero es calcado (copiado de) otro. Busca una demo de un tal delta & franky de 4k. Es una demo de 4k hecha en c++ y despues comparas los fuentes y lees la cabecera y el readme de la demo de 4k's
saludos
entonces, qien copio fue el tal rio, y no nehe :loco:
Citar
El articulo es de un tal rIO, es sobre radial blur. Es tan descarao el nehe como el rio a mi modo de ver.
repitiendo mis palabras .. xD tanta culpa tiene nehe como rio.
saludos
Esta es la conversación de besugos más rara que he visto por aquí :P. Al menos, en los flames no tratamos de ser coherentes...
Citar
Por cierto, en ls fuentes del unreal en la clase base q implementa el driver para el render, primero pone los metodos q necesita y despues pone 8 metodos para rellenar la virtual table ( no se exactamente como se llama, es ese vector de punteros a funciones para implementar metodos virtuales). Sabeis por q hace eso? con q fin
Uhmmm, pega el código, anda que esa pregunta suena muy rara. O te refieres a que define 8 métodos como virtuales(que el compilador mete en la vtable con los punteros a función que tú dices....). Supongo que sabes qué es un método virtual y el polimorfismo... pega el código, plz ;)
Si me refiero a eso mismo q dices o sea:
class blop{
virtual init() = 0;
virtual end() = 0;
virtual draw() = 0;
virtual lpvtPadd0(){}
virtual lpvtPadd1(){}
virtual lpvtPadd2(){}
virtual lpvtPadd3(){}
};
no tengo los fuentes a mano ahora mismo, no estoy en mi pc
lpvt : LongPointerVirtualtable en notación húngara... la primera vez que lo veo :o
Weno, a ver. Hay 2 tipos de métodos virtuales, los puros y... los pecadores? :jaja: . Perdón
-Virtuales puros: DEBEN ser implementados en las clases concretas derivadas:
class IRenderable
{
public:
virtual void Render()=0;
};
Render() tiene que implementarse en las clases concretas( no abstractas, aquellas que instancias) derivadas de IRenderable
class CEntity:public IRenderable
{
public:
void Render(){m_Mesh.Draw();}//código de dibujado en el ejemplo
};
Los métodos virtuales normales ya tienen una implementación( puede estar vacía) que puede o no "sobrecargarse", suele ser un comportamiento standard que las clases derivadas especializan.
(Ando muy sobado como para pensar ejemplos decentes :( )
class CVehicle
{
public:
virtual void GoTo(int X, int Y){m_X=X; m_Y=Y;}
potected:
int X;
int Y;
};
class CAirPlane:public CVechicle
{
public:
virtual void GoTo(int X, int Y)
{
//Para viajar de un lado a otro, el avión tiene
//que Despegar y Aterrizar ;)
Despegar();
m_X=X;
m_Y=Y;
Aterrizar();
}
void Despegar();
void Aterrizar();
};
Queda patente que programo en inglés por defecto ;)
SI, entiendo perfectaente los metodos virtuales y la herencia pero no entiendo por q pone esas funciones virtuales para rellenar la tabla de punteros virtuales. Es para q el struct total tenga un tamaño potencia de dos o q este optimizado para el tamaño de ciertas caches o para q este alineado .. :_(
saludos
CitarSI, entiendo perfectaente los metodos virtuales y la herencia pero no entiendo por q pone esas funciones virtuales para rellenar la tabla de punteros virtuales. Es para q el struct total tenga un tamaño potencia de dos o q este optimizado para el tamaño de ciertas caches o para q este alineado .. :_(
saludos
ni pa 1 ni pa otro
Ya decía yo... :jaja:
Mirándolo con más cuidado... Padd->padding. Uhm, 7 métodos más el tamaño de tener una vtable por tener algún método virtual... 8*4=32bytes... suena a padding. En la vida he usado el padding manual, para eso están los compiladores xD.
También se puede pensar que así tiene 4 métodos virtuales "auxiliares" si necesita añadir algo que se le olvidó :jaja: , incluso se pueden llamar a los métodos virtuales a través de la vtable a capón.... feo suena eso.
Supongo que padding...
Yo recuerdo el código como bien comentado y diseñado... ésto del padding me recuerda al del QuakeI :S
Lo mejor sera mandarle un mial y preguntarle por q hace eso. :DDDDD
Voy a ver si me lo vuelvo a bajar y le echo un ojo.... ;)
CitarLo mejor sera mandarle un mial y preguntarle por q hace eso. :DDDDD
qe mial?
cuidado por q la parte donde esta implemetada esa clase no esta al iniciar el proyecto con el visual c++, debes ir a la carpeta Engine y ver alli las cabeceras o incluirlas tu mismo en el proyecto.
Por cierto solo deja las cabeceras pero el linecunter me saca 26k lineas !! solo de cabeceras !!
saludos
Uhhmm, en ese link sólo hay scripts :(
Jaja, vale, ya ví que lo solucionaste unos post más bajo :jaja:
// Padding.
virtual void vtblPad0() {}
virtual void vtblPad1() {}
virtual void vtblPad2() {}
virtual void vtblPad3() {}
virtual void vtblPad4() {}
virtual void vtblPad5() {}
virtual void vtblPad6() {}
virtual void vtblPad7() {}
Pues nada, están puestos de padding ;)
Uff, se me había olvidado que el Unreal tiene cosas feas xD. Tiene la opción de renderizar por Software y he visto hasta ASM ahí dentro :S
oyep, usa el edit pa cuando qieras poner algo mas, qe 3 post del tiron O_o ...