[TUTORIAL] Tiny3D

wabo escribió:
Hermes escribió:
LuzbelFullHD escribió:Gracias por la respuesta, me ha aclarado bastante.

En cuanto a las SPU y optimzaciones con operaciones vectoriales ¿ hay algún equivalente al usuario mavy de psxreality en EOL ? :)


He añadido notas al post principal (se supone que la primera parte, está acaba a falta de corregir alguna tonteria que haya puesto XD)


pUTAH, ahora a ver quien es el guapo que si lía a pasar todo bien al wiki [+risas] Santa paciencia [+risas]


Pues el mismo que se ofrece voluntario para pasarlo al pitinglish [+risas]
Muchas gracias!!...Demasiado talento!!

No tengo nada mas que decir.. [buenazo]

Salu2!
Joder no paras.

El día que te hagan presidente empieza por fin a ir bien España.
Hermes escribió:Sobre mavy, lo único que se es que el otro día deje un post saludando en psxreality y ya está XD
Saludos


Ya te he contestado ;).

Sobre las SPU para hacer lo de la conversión se debería evaluar, pero en el RSX estoy seguro que es más rápido, tal como dices. Para hacerlo en las SPU se debería trocear la textura en trocitos para repartirla entre las SPUs y luego enviarlo al RSX... y me extrañaría, (y sorprendería a la vez) que fuera más rápido. Otra cosa sería la descompresión del frame.

Aquí habla mi intuición, que ahora mismo en temas PS3 estoy a -1.

Saludos
Hey muy interesante esta este proyecto realmente es como un blender pero para ps3 :)

Pero tengo una pregunta, se podria llegar en un futuro poder utilizar modelos 3d realizados en 3dStudio max, ya sea de forma nativa o utilizando el convertidor universal de formatos que vi hace un tiempo pero que ahora no recuerdo el nombre -_-? puse 3dmax como ejemplo pero puede ser Maya o blender, y como funcionaria la parte de los renders? soportaria grip de ps3 [sati] ?

En fin gracias por el aporte de verdad lo tengo en follow, cosas como esta son las que me gustan de la scene [beer]

Btw creo que lo de las texturas es mas rapido por los SPUs o al menos eso dice la teoria del divide y venceras XD, no en serio se supone que la ventaja de varios nucleos o SPUs es la distribucion de la carga entre ellos realizando la operacion mas rapido que uno solo, aunque puede haber operaciones que con un solo nucleo sea suficiente y usar la distribucion sea una perdida de tiempo, como ejemplo el que dio un prof de la uni que tenia el clasico 1+1 XD
Subiendo que interesa, XD.

Lo de las texturas creo que será más rápido con el RSX que para eso está preparado, XD. Claro que repartiendo trabajo puede ir más rápido pero el problema es hacerlo bien y que las SPU tengan cosas que procesar a la vez ...
Subiendo y rescatando del olvido [poraki]
Phreak_ESP escribió:Subiendo y rescatando del olvido [poraki]


Gracias ...
dark_on_5 está baneado por "saltarse baneo temporal con clon"
varios escribió:
Phreak_ESP escribió:Subiendo y rescatando del olvido [poraki]


Gracias ...


Re-reflote.
Como ya he dicho en el hilo sobre la instalación de PSL1GHT, he actualizado las librerías a lo último de PSL1GHT y los nuevos compiladores:

Bueno, ya he actualizado el git con Tiny3D.

Los que tengáis mi CFW 3.41 estáis de enhorabuena pues... instalando ps3loadx.cfw_hermes_3.41.pkg tenéis un pkg que carga mi ultimo payload y luego arranca PS3LoadX.

Esto tiene su truco: si alguien recuerda, hace tiempo metí en el pkg de PS3LoadX un self llamado RELOAD.SELF, para poder "volver " desde una aplicación a la utilidad. Pues bien, si reemplazamos el EBOOT.BIN por el del lanzador del payload y hacemos que éste último, cargue RELOAD.SELF, tenemos las dos cosas en un solo paso ;)

Ahora cuando se compila PS3LoadX genera el paquete normal, pero con el self npdrm firmado (lo que permite en mi CFW que se ejecute), pero tambien genera otro que debería funcionar en 3.55 con lo de geohot (si es que alguien lo usa [+risas])

Por otro lado, si necesitáis modificar PS3LoadX y queréis luego compilarlo con el payload añadido, basta con hacer "make pkgh341"

La verdad es que mola tela, eso de usar el payload como si fuera un troyano en la 3.41 [qmparto]


Supongo que marioga lo incluirá en breve en su PS3SDK:

viewtopic.php?p=1722886927

Saludos
Hermes escribió:Como ya he dicho en el hilo sobre la instalación de PSL1GHT, he actualizado las librerías a lo último de PSL1GHT y los nuevos compiladores:

Supongo que marioga lo incluirá en breve en su PS3SDK:

viewtopic.php?p=1722886927

Saludos


Dalo por hecho, esta misma noche XD por otra parte, la ps3soundlib me compilo pero... sigue siendo funcional? la verdad me gusto mucho, es increiblemente parecida a tu asndlib de wii
marioga escribió:Dalo por hecho, esta misma noche XD por otra parte, la ps3soundlib me compilo pero... sigue siendo funcional? la verdad me gusto mucho, es increiblemente parecida a tu asndlib de wii


Pues no tengo ni idea: habrá que revisarla por las rutas de instalación del los include y librerías.

Tiny3D se me quedaba en negro por un desorden en los buffers y he notado funciones cambiadas que he tenido que reemplazar, aunque parece que ahora va bien.

Lo único que he notado de lo tuyo, ha sido la librería freetype que como el include estaba dentro de freetype2, pues no la pillaba y la utilidad make_self_npdrm que está chunga o algo porque me produce error (he tenido que añadir la mía, que tiraba de cygwin)

Y con respeto a la soundlib pues el tema será ver si han tocado algo del código SPU, principalmente, pero vamos, que no sería raro que cambiando solo la ruta de instalación, funcione.

Y si, se parece en a la de Wii pues obviamente, me gusta esa forma de funcionar y ya que no puedes hacer algo exactamente igual, por lo menos hazlo lo mas parecido posible (aunque internamente cambie todo lo que tenga que cambiar XD)
Hace días que no se comenta nada. ¿Cómo están las cosas? [oki]
Hermes, estoy tratando de instalar tu librería y cuando compilo me dice que la variable PSL1GHT no está establecida.
Me parece raro porque tanto en /home/qarl/.bashrc como en /root/.bashrc tengo esto añadido:
export PS3DEV=/usr/local/ps3dev
export PATH=$PATH:$PS3DEV/bin
export PATH=$PATH:$PS3DEV/host/ppu/bin
export PATH=$PATH:$PS3DEV/host/spu/bin
export PSL1GHT=$PS3DEV/psl1ght
export PATH=$PATH:$PSL1GHT/host/bin


Y aquí el error:
qarl@ps3dev:~/Desktop/hermesEOL-tiny3d-473d058$ sudo make all
make install -C lib
make[1]: Entering directory `/home/qarl/Desktop/hermesEOL-tiny3d-473d058/lib'
Makefile:3: *** "PSL1GHT must be set in the environment.".  Stop.
make[1]: Leaving directory `/home/qarl/Desktop/hermesEOL-tiny3d-473d058/lib'
make: *** [all] Error 2
qarl@ps3dev:~/Desktop/hermesEOL-tiny3d-473d058$


¿Cúal puede ser el fallo?
Tiene muy buena pinta la lib, muchas gracias! ;)
Aquí está una primera versión de lo que estoy haciendo:

http://www.multiupload.com/7Z9UD4Z8K7

Esta probada con CFW 3.41. No sé si funciona en otro firmware ya que no puedo probar ni sé si firma bien el SDK. Agradecería que alguien lo probara en algún CFW 3.55.

Acepto opiniones de mi aplicación .... [jaja].
Es una primera versión y he puesto sonidos que luego pienso cambiar y las imágenes están hechas en poco tiempo ... luego igual las cambio.

Hermes aparece y di que te parece, gran parte es gracias a ti por ps3soundlib y tiny3D. Y a marioga porque ahora uso su SDK.

Saludos.
Bueno, he añadido una nueva función interesante:

void tiny3d_UserViewport(int onoff, float pos_x, float pos_y, float scale2D_x, float scale2D_y, float scale3D_x, float scale3D_y);

Esta función permite cambiar los ajustes del viewport de forma externa. Se incluye un ejemplo, llamado userviewport que muestra una pantalla que puede ser ajustada mediante el pad.

De esta forma, se puede realizar un ajuste de forma externa mas fino de la salida de pantalla.

Por defecto, el viewport está ajustado de forma interna al modo "video" de mi HDTV vía DVI (HDMI). Parece que no soy el único caso, pues tanto el menú, como los juegos comerciales veo que tienen en cuenta cierto borde a la hora de dibujar (por ejemplo, en MGS4 es bastante evidente). También tengo un modo "PC" que exceptuando el modo 1080i permite poder usar el modo de vídeo sin borde.

Así que para solucionar esto y aprovechar el máximo area de pantalla posible, no quedaría mas remedio que hacer un ajuste a gusto del consumidor.

El parámetro onoff se debe fijar a 1 para activar la función, pos_x, float pos_y se usan para fijar la posición 2D (valores 0.0f y 0.0f si se aplica sin corrección. En 3D no es necesario, pues se situan justo en el centro de la pantalla). scale2D_x, scale2D_y
fijan la escala para el modo 2D (sin corrección alguna puede ser ((float) Video_Resolution.width) / 848.0f y ((float) Video_Resolution.height) / 512.0f respectivamente), mientras que scale3D_x, scale3D_y ajustan la escala para el modo 3D, como es obvio (lo normal es ((float) Video_Resolution.width) / 1920.0f and ((float) Video_Resolution.height) / 1080.0f)

En el ejemplo userviewport se usa una corrección para X/Y basada en unidades mil porcentuales (a algunos como ya he dicho, les puede valer con 0%, pero otros necesitan una corrección negativa)

Saludos
Hermes, traté de ponerme en contacto contigo pero vi que tenías los MP deshabilitados. Haber si me puedes responder a esto.

¿Porqué si compilo un Sample de los tuyos que llevan Tiny3D y lo pruebo me de error como si no estuviese firmado? Sin embargo, compilo un sample del PSL1GHT y la PS3 lo abre sin problemas.

Tengo el PSL1GHT instalado en Ubuntu 10.10 y no logro entender este problema.

PD: Vi que también tuviste problemas a la hora de instalar PSL1GHT en Ubuntu, hace unos días posteé un tutorial actualizado que quizás te interese. La verdad que a mí también me costó lo suyo conseguir instalarlo y que compilase bien.
TUTORIAL PSL1GHT

Salu2 genio! ;)
Qarl escribió:Hermes, traté de ponerme en contacto contigo pero vi que tenías los MP deshabilitados. Haber si me puedes responder a esto.

¿Porqué si compilo un Sample de los tuyos que llevan Tiny3D y lo pruebo me de error como si no estuviese firmado? Sin embargo, compilo un sample del PSL1GHT y la PS3 lo abre sin problemas.


Por que Tiny3D, salvo en el ejemplo de ps3loadX, tira de las aplicaciones que no firman [+risas]

Para eso tenemos un dongle, o un CFW que debería hacer el trabajo: si otros no lo hacen bien, entiendo que no es mi problema, pero dado que las herramientas de geohot solo funcionan parcialmente en 3.41, que es la BASE de la scene, la utilidad real de firmar un SELF NPDRM queda reducida a cosas claves como ps3loadx o la carga de un payload.

Además, existiendo ps3loadX e incluso open manager, que permiten cargar SELF normales usando el mismo sistema, es un poco idiota que la gente siga sirviendo pkg. ¿No es idiota tener cincuenta canales de esos, cuando UNO solo podría administrar todo el Homebrew, reservando los pkg para utilidades realmente claves? ¿y no es idiota utilizar las claves de geohot para todo, cuando ya están revocadas en 3.56 y el día que a lo mejor, alguien de un paso a un firm superior te vas a encontrar que todas esas aplicaciones dejarán de funcionar, por estar cifradas con una clave (todas con la misma y ya revocada, repito), mientras que las mas antiguas sin cifrar funcionarían una vez se añadieran los parches necesarios? (parches que van a ser obligatorios mientras no se conozca como firmar de forma aleatoria los npdrm).

En fin, que cada uno haga lo que le venga en gana, pero mi opinión es esa (claro que tambien puedes coger tu y modificar los antiguos makefiles a la manera de los modernos)

Saludos
Hermes escribió:Además, existiendo ps3loadX e incluso open manager, que permiten cargar SELF normales usando el mismo sistema, es un poco idiota que la gente siga sirviendo pkg. ¿No es idiota tener cincuenta canales de esos, cuando UNO solo podría administrar todo el Homebrew, reservando los pkg para utilidades realmente claves?

La verdad que no conocía ps3loadX. En parte tienes razón, pero también hay que entender que es mucho más cómodo iniciar una aplicación desde el XMB que meterte en una (ps3loadX por ejemplo) para abrir otra no firmada.
De todas formas, no hace falta tener 50 canales, sino las aplicaciones que uses con mucha frecuencia. Aplicaciones secundarias se podrían cargar como tu bien dices para no llenar el XMB de "basura".

Hermes escribió:¿y no es idiota utilizar las claves de geohot para todo, cuando ya están revocadas en 3.56 y el día que a lo mejor, alguien de un paso a un firm superior te vas a encontrar que todas esas aplicaciones dejarán de funcionar, por estar cifradas con una clave (todas con la misma y ya revocada, repito), mientras que las mas antiguas sin cifrar funcionarían una vez se añadieran los parches necesarios? (parches que van a ser obligatorios mientras no se conozca como firmar de forma aleatoria los npdrm).

Andaba un poco verde con este tema :-?

Haber si me pongo y pruebo el ps3loadX y tal.

Salu2 y muchas gracias Hermes ;)
68 respuestas
1, 2