Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> [OpenGL] Текстуры + MD2, некорректно накладывается текстура 
:(
    Опции темы
SAVEL
  Дата 10.2.2011, 19:07 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 31.1.2007

Репутация: -1
Всего: -1



Ув. форумчане подскажите почему не правильно накладывается текстура на мою 3D анимированную модель формата MD2! То ли расслоение глубины, то ли еще что! В общем целая головоломка!
Дело в том, что она почти правильно ложится, но модель становится как бы полу прозрачной, т.е. глядя на фигуру сперди - видишь текстуру спины и наоборот. Как решить эту задачу, что бы все корректно отображалось? smile 

Это сообщение отредактировал(а) SAVEL - 10.2.2011, 19:18
--------------------
В любых делах при максимуме сложности подход к проблеме всё-таки один! Желание - это множество возможностей, а нежелание - это множество причин !!!
PM MAIL   Вверх
Rickert
Дата 13.2.2011, 08:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 2
Всего: 52



Включаю телепатию и вижу ваш код, а также скрины модели smile 


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
SAVEL
Дата 14.2.2011, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 31.1.2007

Репутация: -1
Всего: -1



Цитата

Включаю телепатию и вижу ваш код, а также скрины модели  


Возможно это поможет
спереди
 user posted image

слева
 user posted image

справа
 user posted image

сзади
 user posted image

А загружаю модель так:

Язык: objectiveC

Код


- (void) drawModel 
{
        static GLfloat lightPosition[4] = { 200.0, 0.0, 1.0, 1.0};
    static GLfloat lightDefuse[4] = { 1.0, 1, 1, 1.0};
    static GLfloat lightAmbient[4] = { 0, 0, 0, 1.0};
    
    [self.timeKeeper tick];

    glMatrixMode(GL_MODELVIEW);

    glEnable(GL_DEPTH_TEST);
    
    // Draw Character
    glEnable( GL_LIGHTING);
    glEnable( GL_LIGHT0);
    glLightfv( GL_LIGHT0, GL_DIFFUSE, lightDefuse);
    glLightfv( GL_LIGHT0, GL_AMBIENT, lightAmbient);
    glLightf( GL_LIGHT0, GL_SPOT_EXPONENT, 268);
    glLightfv( GL_LIGHT0, GL_POSITION, lightPosition);
    
    glTranslatef( player.x, player.y, player.z-2);
    glRotatef( 180, 380, -180, 0);
    glScalef( 0.100, 0.100, 0.100);
    [self.character doTick:self.timeKeeper.time];
    [self.character setupForRenderGL];
    [self.character renderGL];
    [self.character cleanupAfterRenderGL];
    glDisable( GL_LIGHT0);
    glDisable( GL_LIGHTING);
}

- (void) setupForRenderGL
{    
    glEnable( GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
    glEnable( GL_TEXTURE_2D);
    glBindTexture( GL_TEXTURE_2D, self.texture.name);
    glEnableClientState( GL_VERTEX_ARRAY);
    glEnableClientState( GL_TEXTURE_COORD_ARRAY);
    glEnableClientState( GL_NORMAL_ARRAY);
    //glEnableClientState( GL_COLOR_ARRAY);
}

/****************************************************************************************************
 *    renderGL
 ****************************************************************************************************/

- (void) renderGL
{
    glVertexPointer( 3, GL_FLOAT, sizeof( GLVertex), &_vertices[0].position);
    glTexCoordPointer( 2, GL_FLOAT, sizeof( GLVertex), &_vertices[0].textureCoords);
    glNormalPointer( GL_FLOAT, sizeof( GLVertex), &_vertices[0].normal);
    //glColorPointer( 4, GL_FLOAT, sizeof( GLVertex), &_vertices[0].color);
    glDrawArrays( GL_TRIANGLES, 0, _header.triangleCount * 3);
}





--------------------
В любых делах при максимуме сложности подход к проблеме всё-таки один! Желание - это множество возможностей, а нежелание - это множество причин !!!
PM MAIL   Вверх
SAVEL
  Дата 18.2.2011, 19:40 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 31.1.2007

Репутация: -1
Всего: -1



Для всех 120 человек, кто просмотрел эту тему, и в особенности комодератору Rickret !!!, и не нашел ни слова, не дал ни совета, ни подсказки, как мне решить эту элементарную проблему отвечаю, и для тех кто сталкнется с подобной проблемой, что все заключалось в комманде glFrontFace(GL_CW)
 smile 
Убедительная просьба администраторам Vingrad удалить мой аккаунт с этого форума!!!

Это сообщение отредактировал(а) SAVEL - 18.2.2011, 19:46
--------------------
В любых делах при максимуме сложности подход к проблеме всё-таки один! Желание - это множество возможностей, а нежелание - это множество причин !!!
PM MAIL   Вверх
BorisVorontsov
Дата 19.2.2011, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Thinker
**


Профиль
Группа: Комодератор
Сообщений: 714
Регистрация: 3.11.2005
Где: Молдавия, г. Киши нёв

Репутация: 1
Всего: 10




Модератор: Сообщение скрыто.



--------------------
[code=cpp]
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;
[/code]
PM MAIL ICQ GTalk   Вверх
kemiisto
Дата 19.2.2011, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



SAVEL, ты такой смишной. smile 




--------------------
PM MAIL WWW GTalk Jabber   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0681 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.