Форум программистов, компьютерный форум, киберфорум
OpenGL
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.59/179: Рейтинг темы: голосов - 179, средняя оценка - 4.59
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2

Уникальная кроссплатформенная супер 3D игра

16.12.2013, 11:32. Показов 43809. Ответов 672
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Эта тема посвящена созданию кроссплатформенной трехмерной игры.
Ну и по традиции всех убийц кризисов, фолаутов, массэффектов и т.д. я буду главным манагером. Для разработки игры нужны художники, моделеры, программисты, готовые усердно в поте лица бэзвозмездно работать не жалея себя.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.12.2013, 11:32
Ответы с готовыми решениями:

что лучше купить 9700к с 2060 супер или 3600 с 2070 супер?
для игрушек но вдруг потом буду стримить

УНИКАЛЬНАЯ ЗАДАЧА!
Разработать программу для расчета площади фигуры, изображенной на рисунке сплошной утолщенной линией. Исходные данные (х1, у1, R1, х2, у2,...

Уникальная строка
Здравствуйте, такой вопрос. Есть выборка результата SELECT из таблицы t1. Есть таблица t2 ,в которой составной первичный ключ (4...

672
Заблокирован
19.02.2014, 11:59
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от programina Посмотреть сообщение
без поиска ближайших точек с помощью перебора
Как не крути, без модели реального 3D мира, состоящего из частиц, каждая из который является ячейкой в памяти - тебе придётся перебирать всё.

Добавлено через 54 секунды
Другое дело - у объектов есть баундари боксы и прочие общие границы и саб границы - вот для общего перебора используют их - если "попался" - в нём идёт более детальный перебор по треугольникам
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 12:16  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
Другое дело - у объектов есть баундари боксы и прочие общие границы и саб границы
Другая проблема - мне нужна нормальная сетка, а блендер экспортирует ее в непонятно как разбросанные квадраты. Я сейчас из этих квадратов пазл собираю...
0
Заблокирован
19.02.2014, 12:46
Цитата Сообщение от programina Посмотреть сообщение
а блендер экспортирует
А что за блендер то? Это не тот, который в Visual Studio входит?
Из него в 3DS Max перегнать можно? Если да - то давай сюда свою сетку в формате Макса, я тебе своим плагином для макса в любой формат твой перегоню - скажи только в какой )))

Добавлено через 1 минуту
блендер твой нашёл - ща посмотрю что можно сделать :-)
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 12:49  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
А что за блендер то?
3d редактор! http://ru.wikipedia.org/wiki/Blender
0
Заблокирован
19.02.2014, 13:00
Цитата Сообщение от programina Посмотреть сообщение
3d редактор!
да я уже нашёл эту нелепость ...
Перегоняй свою сетку в 3ds формат и скажи в какой тебе надо её перегнать

Добавлено через 9 минут
я тебе перегоню в твой любой бинарный формат, например:
идут тройки по 4 байта(флоат):
x,y,z
nz,ny,nz,
bx,by,bz,
tx,ty,tx,
дальше двойка
tx,ty

и так далее - LOOP
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:02  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
Перегоняй свою сетку в 3ds формат
У меня денег нет на 3d max.

Вот таким странным образом рисуются квадраты в блендере. Вершины обозначенны модельками планет Солнечной системы, и можно заметить, что одна и планет в 9-м квадрате выше чем другие. Как так?
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:03  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
я тебе перегоню в твой любой бинарный формат
у меня и так бинарный формат.
0
Заблокирован
19.02.2014, 13:12
Цитата Сообщение от programina Посмотреть сообщение
Вот таким странным образом рисуются квадраты в блендере.
это они в твоей игре так рисуются,а в блендере они нормально выглядят?
Дай свою модельку в формате 3ds
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:21  [ТС]
THE-•-MASTER, untitled.3ds.zip
0
Заблокирован
19.02.2014, 13:26
Так, теперь говори в какой формат тебе перегнать ...
Структура твоего бинарного формата какая?
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:28  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
это они в твоей игре так рисуются,а в блендере они нормально выглядят?
и там и там выглядят нормально.

Кстати, я совсем забыла про индексы квадратов. Нужно смотреть на них в первую очередь!!!!
0
Заблокирован
19.02.2014, 13:29
кто нибуть понимает ваще о чём речь?
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:35  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
Структура твоего бинарного формата какая?
уже не надо. Я просто забыла про индексы квадратов.

Добавлено через 4 минуты
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
кто нибуть понимает ваще о чём речь?
индексирование. Не слышал?
0
Заблокирован
19.02.2014, 13:41
Цитата Сообщение от programina Посмотреть сообщение
индексирование. Не слышал?
слышал, ты просто не ясно выражаешь вообще суть проблемы
Ты кстате с коллизией разобралась? Есть демка с космическим кораблём, который смело врезается в горы и от них отскакивает и не пролетает насквозь?
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:50  [ТС]
На самом деле в опенгл нет квадратов, там есть только треугольники, квадрат состоит из 2-х треугольников:
C++
// первый треугольник
0.555556 -1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 // 0 (1-я)
0.777778 -1.000000 0.000000 0.000000 0.000000 1.000000 1.000000 0.000000 // 1 (2-я)
0.777778 -0.777778 0.000000 0.000000 0.000000 1.000000 1.000000 1.000000 // 2 (3-я)
// второй треугольник
0.777778 -0.777778 0.000000 0.000000 0.000000 1.000000 1.000000 1.000000 // 2 (4-я)
0.555556 -0.777778 0.000000 0.000000 0.000000 1.000000 0.000000 1.000000 // 3 (5-я)
0.555556 -1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 // 0 (6-я)
 
0 1 2 // индексы для первого треугольника
2 3 0 // индексы для второго треугольника
Так как 3-я и 4-я вершины, 1-я и 6-я вершины совпадают, то эта запись сокращается до:
C++
0.555556 -1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000
0.777778 -1.000000 0.000000 0.000000 0.000000 1.000000 1.000000 0.000000
0.777778 -0.777778 0.000000 0.000000 0.000000 1.000000 1.000000 1.000000
0.555556 -0.777778 0.000000 0.000000 0.000000 1.000000 0.000000 1.000000
 
0 1 2 3
Добавлено через 3 минуты
Вот мой загрузчик .ply, я им сейчас не пользуюсь, потому что перегоняю в бинарный формат.
C++
void load(unsigned int id, const char *path)
{
    char s[64];
    int res = 0;
    unsigned int vertex;
    unsigned int face;
 
    FILE * f = fopen(path, "rt");
 
    while(res > -1)
    {
        res = fscanf(f, "%s", s);
 
        if(strcmp(s,"vertex")==0)       fscanf(f, "%d", &vertex);
        if(strcmp(s,"face")==0)         fscanf(f, "%d", &face);
        if(strcmp(s,"end_header")==0)   break;
    }
 
    float *vbdata = new float[vertex*3];
    float *nbdata = new float[vertex*3];
    float *tbdata = new float[vertex*2];
 
    for(unsigned i = 0, j = 0; i < vertex*3; i += 3, j += 2)
    {
        fscanf(f, "%f %f %f", &vbdata[i+0], &vbdata[i+1], &vbdata[i+2]);
        fscanf(f, "%f %f %f", &nbdata[i+0], &nbdata[i+1], &nbdata[i+2]);
        fscanf(f, "%f %f", &tbdata[j+0], &tbdata[j+1]);
    }
 
    unsigned int *x = new unsigned int[1000000];
    unsigned int d;
 
    nof3 = face*3;
 
    for(unsigned int i = 0; i < nof3; i+=6)
    {
        fscanf(f, "%d", &d);
        if(d == 3) {
            fscanf(f, "%d", &x[i+0]);
            fscanf(f, "%d", &x[i+1]);
            fscanf(f, "%d", &x[i+2]);
            i -= 3;
        }
        if(d == 4) {
            fscanf(f, "%d", &x[i+0]);
            fscanf(f, "%d", &x[i+1]);
            fscanf(f, "%d", &x[i+2]);
            fscanf(f, "%d", &x[i+4]);
            x[i+3] = x[i+2];
            x[i+5] = x[i+0];
            nof3 += 3;
        }
    }
    fclose(f);
 
    unsigned int *indices= new unsigned int[nof3];
    for(unsigned int i = 0; i < nof3; i ++)
        indices[i] = x[i];
 
 
    glGenBuffers(1, &vb[id]);
    glBindBuffer(GL_ARRAY_BUFFER, vb[id]);
    glBufferData(GL_ARRAY_BUFFER, sizeof(vbdata)*vertex*3, vbdata, GL_STATIC_DRAW);
 
    glGenBuffers(1, &uvb[id]);
    glBindBuffer(GL_ARRAY_BUFFER, uvb[id]);
    glBufferData(GL_ARRAY_BUFFER, sizeof(tbdata)*vertex*2, tbdata, GL_STATIC_DRAW);
 
    glGenBuffers(1, &nb[id]);
    glBindBuffer(GL_ARRAY_BUFFER, nb[id]);
    glBufferData(GL_ARRAY_BUFFER, sizeof(nbdata)*vertex*3, nbdata, GL_STATIC_DRAW);
 
    glGenBuffers(1, &eb[id]);
    glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, eb[id]);
    glBufferData(GL_ELEMENT_ARRAY_BUFFER, nof3 * sizeof(unsigned int), indices, GL_STATIC_DRAW);
 
    delete [] vbdata;
    delete [] tbdata;
    delete [] nbdata;
    delete [] indices;
    delete [] x;
}
0
Заблокирован
19.02.2014, 13:52
Выложи сюда EXE_шник со своей космической пустыней с батарейкой ...
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 13:54  [ТС]
THE-•-MASTER, у меня ELF, а не EXE ! Ставь линукс
0
Заблокирован
19.02.2014, 14:03
Цитата Сообщение от programina Посмотреть сообщение
у меня ELF, а не EXE ! Ставь линукс

Ты ж говорила что у тебя кроссовый движок! Пересобери под винду!
Хотя можешь и ELF выкладывать, у меня на виртуалке где - то убунта валялась
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
19.02.2014, 14:10  [ТС]
Цитата Сообщение от THE-•-MASTER Посмотреть сообщение
Хотя можешь и ELF выкладывать, у меня на виртуалке где - то убунта валялась
А opengl-драйверов c поддержкой OpenGL 4 в виртуалке нет? Нет. Ставь линукс!
0
Заблокирован
20.02.2014, 14:36
Цитата Сообщение от programina Посмотреть сообщение
Нет. Ставь линукс!
Ву-э-э-э Никогда!
Windows FOREVER!
Так у тебя ж кроссовый движок? Или ты уже от кроссовости отказываешься?

Добавлено через 23 часа 52 минуты
где EXE-Шник с игрой?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.02.2014, 14:36

Уникальная выборка
Приветствую. Есть таблица c полями ID, Param1, Param2 Таблица заполнена примерно так: 1 FirstValue1, SecondValue1 2 FirstValue1,...

Розыскивается: идея уникальная
Привет) Нужна идея))) В чем суть: мне нужно задание на ближайший год. Хочу за год реализовать достаточно большой (человек за один год...

Уникальная ссылка и счетчик
Доброго времени суток. Встала проблема создания страници по следующим параметрам. Для каждого вновь вошедшего генерируется новая...

Уникальная тематика сайта
У моего сайта уникальная тематика, конкурентов вообще нету... Но зря этому радоваться, люди не могут искать то, чего не знают... Вопрос как...

Уникальная ндексация: траблы
Создаю такую БД в составе проекта: Беда в том, что при добавление в таблицу &quot;тдиагнозы&quot; (в другие пока не пробовал) выдает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
180
Закрытая тема Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru