Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/14: Рейтинг темы: голосов - 14, средняя оценка - 4.57
294 / 200 / 6
Регистрация: 23.10.2010
Сообщений: 1,173
Записей в блоге: 1

Движок для игр

20.05.2011, 20:34. Показов 3201. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!!!, хотел узнать возможно ли создать движок на C++ чтобы экспортировать модели из 3ds max а после в самом движке можно было ходить и смотреть на всё это, т.е как в игре от ПЕРВОГО ЛИЦА, если да то как??????????
1
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.05.2011, 20:34
Ответы с готовыми решениями:

Подскажите пожалуйста движок для создания игр с пониманием основ языка Cи и С++.
Подскажите пожалуйста движок для создания игр с пониманием основ языка Cи и С++. Для начала, с чего то то нужно начинать... Просто кроме...

Движок для голосовой авторизации
Здравствуйте, мне нужно для диплома написать "приложение звуковой идентификации пользователей". Какой готовый движок для этого можно...

Бот для браузерных игр
Добрый день, форумчане. Я с таким вопросом: возникло желание написать бота для одной известной браузерной игры на букву "Т"....

1
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
20.05.2011, 21:44
Лучший ответ Сообщение было отмечено xTIGRx как решение

Решение

почитай на досуге Софт для создания игр, что вставить вместо трех точек в урле, надеюсь, ты знаешь

Добавлено через 7 минут
Прямо из 3D MAX не выйдет. Нужно конвертировать этот объект в х-формат. Потом при помощи функции LoadMeshFromFile загрузить объект в сцену. Ну а потом уже обрабатывать.
Для этого всего вам нужен DirectX SDK.
Примерный код (для МСВС):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <windows.h>
#include <d3d9.h>
#include <d3dx9.h>
#include <d3dx9core.h>
#include <d3dx9mesh.h>
#include <Mmsystem.h>
#pragma comment(lib, "d3d9.lib")
#pragma comment(lib, "d3dx9.lib")
#pragma comment(lib, "Winmm.lib")
 
ID3DXMesh* pMesh                    =NULL;     //переменная которая хранит саму модель
ID3DXBuffer* pMeshBuffer            =NULL;                //буфер, хранящий вершины модели
LPDIRECT3DTEXTURE9* pMeshTexture    =NULL;                           //текстура
D3DMATERIAL9* pMeshMaterials        =NULL;                           //материал
//тут еще надо создать устройство direct3d...
...
HRESULT InitialMesh()       //загрузка модели, материала и текстур
{
    if(FAILED(D3DXLoadMeshFromXA("тут путь к вашему файлу с расширением *.x", D3DXMESH_SYSTEMMEM, pDirect3DDevice, NULL, &pMeshBuffer, NULL, &dwNumber, &pMesh)))
        return E_FAIL;
    D3DXMATERIAL* D3DXMeshMaterials;
    D3DXMeshMaterials=(D3DXMATERIAL*)pMeshBuffer->GetBufferPointer();
 
    pMeshMaterials=new D3DMATERIAL9[dwNumber];
    pMeshTexture=new LPDIRECT3DTEXTURE9[dwNumber];
    for(DWORD i=0; i<dwNumber; i++)
    {
        pMeshMaterials[i] = D3DXMeshMaterials[i].MatD3D;
        pMeshMaterials[i].Ambient=pMeshMaterials[i].Diffuse;
 
        if(FAILED(D3DXCreateTextureFromFileA(pDirect3DDevice, D3DXMeshMaterials[i].pTextureFilename, &pMeshTexture[i])))
            pMeshTexture[i]=NULL;
        pMeshBuffer->Release();
        
    }
    return S_OK;
}
 
VOID DrawMyMesh()          //рисование загруженного объекта
{
    for(DWORD i=0; i<dwNumber; i++)
    {
        pDirect3DDevice->SetMaterial(&pMeshMaterials[i]);
        pDirect3DDevice->SetTexture(0, pMeshTexture[i]);
        pMesh->DrawSubset(i);
    }
}
Более подробно можете почитать в книге Горнаков С.Г. "DirectX 9. Уроки программирования на С++"

В аттаче пример загрузки .3ds файла (простейшей, без скелета, анимации и пр). Описания .max формата (новых версий студии) я кстати нигде вообще не нашёл (там надо было недавно по работе).

А вообще если Вам нужно узнать как пишутся те или иные загрузчики, то легче всего скачать какой-нибудь опенсорсный движок и распотрошить его. Там их много обычно разных.
статья не моя, претензиии не принимаются
техническое обслуживание не предоставляется

пример из статьи:
Вложения
Тип файла: zip 3ds.ZIP (419.5 Кб, 107 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.05.2011, 21:44
Помогаю со студенческими работами здесь

Движок для игр
Я хочу научиться писать игры для iOS, подскажите пожалуйста движок, согласен и на платный. И объясните пожалуйста почему.

Движок для игр на основе С++
Всем привет. Подскажите движок для создания игр на основе с++. Без встроенных графических редакторов и прочих наворотов. Писал на...

Язык программирования и Движок для игр!
Подскажите какой язык программирования наиболее подходит для написания игр , движка для игр? Насколько для этого подходят языки...

Какой движок использовать для двумерных игр
Какие движки вы длянего использовали хотя бы для создания двух-мерных игр? Какие плюсы и минусы вы заметили в работе с ними? ...

Движок для игр SFML. Не получается подключить библиотеки
watch?v=CVYjVCuPuY4 Всё делаю как в видео. В итоге при попытке сомпилить пример:


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru