Resultados 1 al 5 de 5

Tema: Colisiones en Blitz3d

  1. #1
    Fecha de ingreso
    Oct 2016
    Mensajes
    227

    Colisiones en blitz3d

    Buenas tardes, estoy con el tema de las colisiones en Blitz3D y con según qué objetos me funcionan bien o no, a ver si alguien sabe decirme que puedo estar haciendo mal.

    Me explico:
    - Creo el escenario, creo los enemigos, la cámara y los objetos repartidos por el escenario.
    - Defino los tipos de objetos que voy a usar para las colisiones enumerandolos: Tipo_escenarios=1 Tipo_personajes=2.
    - Indico que tipo de entidad es cada objeto para las colisiones aplicando las numeraciones que he creado anteriormente: Entitytype Escenario1,Tipo_escenarios.
    - Indico las dimensiones de cada objeto con entity box (para los cubos) o entity radius (para objetos esféricos) y si queremos que las colisiones sean polígono a polígono entonces no pongo nada.
    - Activo las colisiones entre dos objetos (y aquí es donde falla): Collisions Tipo_personajes,Tipo_escenario,2,2 (con los 2 estamos diciendo que la primera entidad es esférica y la segunda polígono a polígono y que lo que queremos cuando colisionan es que se deslicen).

    La cámara tiene esa misma programación y funciona, choca con las paredes y se desliza, no las atraviesa, pero con el protagonista o los enemigos empieza a meterse por el suelo o de pronto comienza a atravesar las paredes en un momento dado, cuando él quiere. ¿Por qué?
    Un saludo.

  2. #2
    Fecha de ingreso
    Oct 2016
    Mensajes
    227

    Colisiones en blitz3d

    Buenas tardes, ya he resuelto el problema. El error ocurre porque las colisiones polígono a polígono son poco exactas en Blitz3d, tenemos que tener en cuenta que el modelado del objeto no tenga fisuras ni nada que pueda dar pie a confusión a Blitz3d, por lo que cuanto más complejo sea el modelado más impreciso puede ser a la hora de detectar colisiones.
    ¿Cómo lo he solucionado?
    Separando los objetos del escenario y clasificándolos en esferas o en cubos y dando unas dimensiones especificas a cada objeto con enetitybox o entityradius para que así no falle en las colisiones. El problema ahora es que, al ser medidas imaginarias no puedo saber si las dimensiones que estoy dando a un objeto son las que quiero, no sé si me estoy explicando bien.

    Imaginemos una habitación y el personaje dentro, ¿cómo se que medidas tiene que tener ese cubo que sirve para detectar las colisiones si no se lo que mide el habitáculo y no puedo ver el cubo? ¿existe alguna forma de ver las colisiones para ajustar las medidas? Un saludo.

  3. #3
    Fecha de ingreso
    Oct 2016
    Mensajes
    227

    Colisiones en blitz3d

    ¿Alguien conoce alguna manera de saber las dimensiones de un objeto en 3DS Max para así poder aplicarlas a la caja de colisiones de Blitz3D? Podría ser la solución.

    Edito: Ya he visto donde salen las dimensiones y las coordenadas de un objeto en 3DSMax. Seleccionamos el objeto, después la herramienta para mover y a pié de pantalla nos aparecerán las coordenadas. Si queremos saber que dimensiones tiene solo tenemos que seleccionar el objeto, clicar en la herramienta de escalar y nos dará también las dimensiones.

    Clic en la imagen para ver su versión completa. 

Nombre: Coordenadas.JPG 
Visitas: 15 
Tamaño: 13.0 KB 
ID: 221612

    El problema es ¿por qué |@#~EUR introduzco las coordenadas y las dimensiones en Blitz3D y no coinciden?
    He cogido un objeto al azar, una mesa qué tengo modelada y he creado el cubo imaginario para las colisiones desde Blitz3D dándole las mismas coordenadas que dice 3DSmax que tiene el objeto y el personaje me choca como si la mesa estuviese al lado y fuese más pequeña.
    ¿Por qué?
    Última edición por Jhonatan00_00; 19-01-2017 a las 10:30

  4. #4
    Fecha de ingreso
    May 2005
    Mensajes
    1,238

    Colisiones en blitz3d

    La herramienta escalar no da las dimensiones del objeto, te da el valor de la escala qué multiplica las dimensiones del objeto. Esto puede ser algo lioso al principio.

    Si creas un cubo de 20x20x20 unidades y lo escalas al 200% (por defecto un objeto no escalado en max es 100%). Si miras en el panel modificar, el cubo seguirá poniendo que sus medidas son de 20x20x20, y si miras la escala esta te dirá que es de 200% en cada eje si la escala era uniforme. Pero tus medidas reales del objeto son la combinación de las unidades iniciales por la escala. Este cubo será de 40x40x40.

    Para no liarte, si tienes un objeto lo mejor es crearte un dummie tape que es una cinta métrica qué te da medidas en 3dsmax, o un cubo sin escalar, y modificar sus dimensiones en el panel creación o de modificación.

    Solo ten en cuenta que hay programas que no interpretan las medidas de la misma manera. Por ejemplo, 1 unidad en Maya equivalen a 10 en 3dsmax, pero seguro encuentras esto fácil con un par de prueba y error.

  5. #5
    Fecha de ingreso
    Oct 2016
    Mensajes
    227

    Colisiones en blitz3d

    Gracias por la información, a veces uno se ve solo en esto porque tiene dudas y nadie le responde, así que, terminas tirando de ingenio para solucionar los problemas, pero bueno, ya lo he solucionado.
    - Crea tantos cubos como necesites para las colisiones con Createcube. De esta forma si verás la caja de colisiones porque de hecho, es el cubo.
    - Posicionados en el lugar del objeto que quieres crear las colisiones con Positionentiy.
    - Redimensionados para qué los objetos queden dentro con Scalentity (para hacer colisiones tipo paredes, donde estamos dentro del cubo, las dimensiones del cubo deberán de ser negativas, para qué los polígonos miren hacia dentro, de lo contrario no funcionarán).
    - Y una vez está en su lugar usa Entityalpha para hacerlo invisible. También puedes usar Entityalpha mientras estas acomodando un cubo para hacerlo transparente y así observar mejor si queda en su lugar.
    - Cuando tengas el trabajo hecho, usa el tipo de colisiones Esfera a polígono con Collisions y funcionará todo a la perfección, sin bajada de frames ni exceso de polígonos porque los cubos de Blitz3D son objetos muy simples aparte de que no tienen polígonos solapados ni errores de ningún tipo para qué Blitz3D pueda fallar.

    Es la única manera qué da buenos resultados, porque usando colisiones tipo cubo de la forma tradicional con Entitybox no veremos el cubo para darle las dimensiones y lo tendremos que hacer a ojo, siendo muy complicado o imposible a veces con según qué objetos. Un saludo.

Temas similares

  1. 3dsMax Colisiones con 3ds Max
    Por javitooling en el foro Animación y Rigging
    Respuestas: 1
    : 07-03-2013, 16:58
  2. Colisiones 3ds Max
    Por Piper87 en el foro Videojuegos
    Respuestas: 0
    : 03-11-2012, 11:58
  3. Colisiones en x3d
    Por FANTASMAA2004 en el foro Quieres presentarte
    Respuestas: 1
    : 13-03-2009, 10:02
  4. Colisiones
    Por enaamorado en el foro Partículas y Dinámicas
    Respuestas: 25
    : 10-06-2006, 17:36
  5. Colisiones en 3ds Max
    Por Beleashar en el foro Partículas y Dinámicas
    Respuestas: 3
    : 01-02-2005, 23:01