Esate.ru

lib3ds + opengl текстура отображается плиткой

Всем привет, имеется проблема, при наложении текстуры и изменения её размера она ложится плиткой, пытаюсь поставить TEXTURE_NO_TILE в настройках текстуры, однако это не к чему не приводит.
Вот структура класса текстуры и меша
 [Flags]
    public enum Lib3dsTextureMapFlags
    {
        LIB3DS_TEXTURE_DECALE = 0x0001,
        LIB3DS_TEXTURE_MIRROR = 0x0002,
        LIB3DS_TEXTURE_NEGATE = 0x0008,
        LIB3DS_TEXTURE_NO_TILE = 0x0010,
        LIB3DS_TEXTURE_SUMMED_AREA = 0x0020,
        LIB3DS_TEXTURE_ALPHA_SOURCE = 0x0040,
        LIB3DS_TEXTURE_TINT = 0x0080,
        LIB3DS_TEXTURE_IGNORE_ALPHA = 0x0100,
        LIB3DS_TEXTURE_RGB_TINT = 0x0200
    }
 public class Lib3dsTextureMap
    {
        //public uint user_id;
        //public object user_ptr;
        public string name = "";
        public Lib3dsTextureMapFlags flags;
        public float percent;
        public float blur;
        public float[] scale = new float[2];
        public float[] offset = new float[2];
        public float rotation;
        public float[] tint_1 = new float[3];
        public float[] tint_2 = new float[3];
        public float[] tint_r = new float[3];
        public float[] tint_g = new float[3];
        public float[] tint_b = new float[3];
    }
public class Lib3dsMaterial
    {
        //public uint user_id;
        //public object user_ptr;
        public string name = "";                                  // Material name
        public float[] ambient = new float[3];    // Material ambient reflectivity
        public float[] diffuse = new float[3];    // Material diffuse reflectivity
        public float[] specular = new float[3];   // Material specular reflectivity
        public float shininess;                                 // Material specular exponent
        public float shin_strength;
        public bool use_blur;
        public float blur;
        public float transparency;
        public float falloff;
        public bool is_additive;
        public bool self_illum_flag;
        public float self_illum;
        public bool use_falloff;
        public int shading;
        public bool soften;
        public bool face_map;
        public bool two_sided;                  // Material visible from back
        public bool map_decal;
        public bool use_wire;
        public bool use_wire_abs;
        public float wire_size;
        public Lib3dsTextureMap texture1_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap texture1_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap texture2_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap texture2_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap opacity_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap opacity_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap bump_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap bump_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap specular_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap specular_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap shininess_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap shininess_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap self_illum_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap self_illum_mask = new Lib3dsTextureMap();
        public Lib3dsTextureMap reflection_map = new Lib3dsTextureMap();
        public Lib3dsTextureMap reflection_mask = new Lib3dsTextureMap();
        public uint autorefl_map_flags;
        public int autorefl_map_anti_alias; // 0=None, 1=Low, 2=Medium, 3=High
        public int autorefl_map_size;
        public int autorefl_map_frame_step;
    }
 public class Lib3dsMesh
    {
        //public uint user_id;
        //public object user_ptr;
        public string name = "";                                  // Mesh name. Don't use more than 8 characters
        public Lib3dsObjectFlags object_flags;  // see Lib3dsObjectFlags
        public byte color;                                              // Index to editor palette [0..255]
        public float[,] matrix = new float[4, 4]; // Transformation matrix for mesh data
        public ushort nvertices;                                // Number of vertices in vertex array (max. 65535)
        public List<Lib3dsVertex> vertices;
        public List<Lib3dsTexturecoordinate> texcos;
        public List<ushort> vflags;
        public ushort nfaces;                                   // Number of faces in face array (max. 65535)
        public List<Lib3dsFace> faces;
        public string box_front = "";
        public string box_back = "";
        public string box_left = "";
        public string box_right = "";
        public string box_top = "";
        public string box_bottom = "";
        public Lib3dsMapType map_type;
        public float[] map_pos = new float[3];
        public float[,] map_matrix = new float[4, 4];
        public float map_scale;
        public float[] map_tile = new float[2];
        public float[] map_planar_size = new float[2];
        public float map_cylinder_height;
    }


lib3ds + opengl Перевод 3д модели в 2д изображение

Всем привет, есть такая проблема, нужно загруженную часть 3Д модели отрисовать в JPG файле. В принципи частично у меня это получилось, однако отрисовывается только часть модели (скорее всего она не под нужным углом повёрнута, как развернуть её я хз). Или я гдето как обычно натупил. Подскажите где ошибка, или как это можно иначе реализовать?

Читать подробнее...



Отображение текстуры openGL + lib3ds

Всем доброго времени суток, подскажите как отобразить текстуры 3d объекта, в окне SimpleOpenglControl


lib3ds + Tao openGL не отображается модель

Всем привет, в общем проблема ясна из названия темы, в SimpleOpenGlControl не отображается модель.
Считывание 3д модели происходит библиотекой 3dslib
Вот код, может кто-то поймёт в чем дело

Читать подробнее...




Блоги Esate.ru

Регистрация

Регистрируясь, вы принимаете правила сайта. Если вы не получили код подтв. регистрации - не забудьте проверить папку спам.
Логин*
Email*
Пароль*
Подтверждение пароля*
 
Логин*
Код*
 

Восстановление пароля

Пожалуйста, заполните поля, после чего вы получите код подтверждения на ваш E-mail. Если код не пришел в течении нескольких минут - проверьте папку спам.
Логин

или Email
 
Логин*
Код подтверждения*
Новый пароль*
Подтверждение пароля*
 

Авторизация

Пожалуйста, авторизуйтесь, для входа на сайт с помощью соц. сети:
  • Используйте вашу учетную запись на Facebook.com для входа на сайт.
  • Используйте вашу учетную запись VKontakte для входа на сайт.
  • Используйте вашу учетную запись Google для входа на сайт.

или с помощью аккаунта на сайте:

Логин
Пароль