Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - Omaddon

#1
Programación gráfica / Portal Render
10 de Septiembre de 2003, 12:38:33 AM
 Estoy programando un motor basado en portales. ¿Como es mejor pintar la escena?
1. Pintar el sector actual y todos los objetos que contiene y pasar al siguiente sector.
2. Marcar los poligonos y objetos visibles para despues pintarlos ordenadamente.
3. .........

Con la primera forma, gana en paralelismo y es mas sencillo utilizar los portales para efectos como
espejos y portales.

Con la segunda, minimizas los cambios de textura y estados.

¿Como es mejor pintar la escena? Cada sector contiene poligonos, objetos(personajes), luces, particulas, coronas...
#2
General Programadores / Empaquetar
01 de Agosto de 2003, 01:15:32 PM
 El código de Juan Mellado funciona bien.

int Get(int v, int i)   //i = [0, 1, 2]
{
  return( (v >> (10 * i) ) & 0x3FF);
}


void Set(int & v, int i, int s)   //s = valor a poner
{
  int m[] = {0x3FFFFC00, 0x3FF003FF, 0x000FFFFF};

  v = (v & m) | (s << (10 * i) );
}


Lo único, es que he añadido una comprobación para evitar que en la función Set, introduzcan un valor suparior a 10bits, porque si lo hacen modificarias también la componente superior.
#3
General Programadores / Empaquetar
31 de Julio de 2003, 10:05:42 PM
 Ya funciona. Gracias a todos por vuestras respuestas.
#4
General Programadores / Empaquetar
31 de Julio de 2003, 01:47:44 PM
 Funciona bien si solo introduzco datos una vez. Si una vez empaquetado, necesito sobreescribir el valor de uno de los componente, da un resultado incorrecto.
#5
General Programadores / Empaquetar
30 de Julio de 2003, 10:58:55 PM
Necesito empaquetar 3 valores de 10 bits(0..1023 codificados como int o short) en una palabra de 4 bytes(int). Como deben ser las operaciones a nivel de bits para solo elegir los 10 bits menos significativos de cada componente y situarlos en el lugar de la palabra de 4 bytes correcto y despues poder leer los valores de la componente desde dicha palabra. Muchas gracias.