PMG

Форумы по созданию игр
Текущее время: 26 авг 2026 18:22

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: 04 янв 2006 20:48 
Не в сети
Любитель
Аватара пользователя

Зарегистрирован: 30 ноя 2005 13:07
Сообщения: 24
Откуда: Украина, Краматорск
Тебе что, кусок кода надо сюда дать или в чём был вопрос 8-) ?

_________________
Ученье свет, а не ученье - чуть свет и на работу


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 11 янв 2006 10:11 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Что не понятно в уроке по загрузке мира?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 25 фев 2006 20:19 
Не в сети
Новичок

Зарегистрирован: 19 фев 2006 14:58
Сообщения: 8
Откуда: Из города
Вот я чуть-чуть переделал эту штуку (+выбираеться номер текстуры - текстуры считываються с файла и нумеруються, кому надо - скину...):
typedef struct tagVERTEX // Создаём стр-ру нашей вершины
{
float x, y, z; // 3D координаты
float u, v; // Координаты на текстуре
} VERTEX;
typedef struct tagTRIANGLE
{
VERTEX vertex[3]; // Массив трёх вершин
int numtexture;
} TRIANGLE;

typedef struct tagSTRIG
{
int numtriangles; // Кол-во треугольников в секторе
TRIANGLE* triangle; // Ссылка на массив треугольников
} STRIG;
STRIG sectorT;

//................................

void LoadTriangles()
{
char fline[255];
int numtriangles;
int numtexture;
FILE *filein;
filein = fopen(ftrian, "rt");
ReadStr(filein,fline);
sscanf(fline, "NUMPOLLIES %d\n", &numtriangles);
float x, y, z, u, v;
sectorT.triangle = new TRIANGLE[numtriangles];
sectorT.numtriangles = numtriangles;
for (int triloop = 0; triloop < numtriangles; triloop++)
{
ReadStr(filein,fline);
sscanf(fline,"TEXTURE %d\n", &numtexture);
sectorT.triangle[triloop].numtexture = numtexture;
for (int vertloop = 0; vertloop < 3; vertloop++)
{
ReadStr(filein,fline);
sscanf(fline, "%f %f %f %f %f", &x, &y, &z, &u, &v);
sectorT.triangle[triloop].vertex[vertloop].x = x;
sectorT.triangle[triloop].vertex[vertloop].y = y;
sectorT.triangle[triloop].vertex[vertloop].z = z;
sectorT.triangle[triloop].vertex[vertloop].u = u;
sectorT.triangle[triloop].vertex[vertloop].v = v;
}
}
fclose(filein);
}
void ViewPolygones()
{
GLint numpol = sectorT.numtriangles;
GLfloat x_m, y_m, z_m, u_m, v_m;
// Выводим на экран треугольники
glNormal3f( 0.0f, 1.0f, 0.0f);
for (int loop_m = 0; loop_m < numpol; loop_m++)
{
glNormal3f( 0.0f, 0.0f, 1.0f);
glBindTexture(GL_TEXTURE_2D, texture[sectorT.triangle[loop_m].numtexture-1]);
glBegin(GL_TRIANGLES);
for (int i = 0; i < 3; i++)
{
x_m = sectorT.triangle[loop_m].vertex[i].x;// X 1-ой точки
y_m = sectorT.triangle[loop_m].vertex[i].y;// Y 1-ой точки
z_m = sectorT.triangle[loop_m].vertex[i].z;// Z 1-ой точки
u_m = sectorT.triangle[loop_m].vertex[i].u;
v_m = sectorT.triangle[loop_m].vertex[i].v;
glTexCoord2f(u_m,v_m); glVertex3f(x_m,y_m,z_m);
}
glEnd();
}
}

_________________
Все мы когда-то будем на последнем уровне Doom-а...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 26 фев 2006 11:56 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Работает?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 фев 2006 22:34 
Не в сети
Новичок

Зарегистрирован: 19 фев 2006 14:58
Сообщения: 8
Откуда: Из города
Работает, и я еще добавил вывод четырехугольников... (хотя треугольники выводятся быстрее, но мне кубы легче строить :( ). В будущем хочу сделать эти полигоны в виде обьектов, к примеру: Tree.txt, MyHouse.txt...

_________________
Все мы когда-то будем на последнем уровне Doom-а...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB