Форум программистов, компьютерный форум, киберфорум
Наши страницы
Игровые движки
Войти
Регистрация
Восстановить пароль
 
Ninec
2 / 2 / 0
Регистрация: 19.06.2015
Сообщений: 124
Записей в блоге: 1
Завершенные тесты: 1
#1

Как пишут игры и движки к ним? Witcher 3 - Игровые движки

30.07.2016, 02:47. Просмотров 674. Ответов 5

Как пишут игры на С++?
Вот например игра Witcher 3 или Counter Strike как они сделаны и какой
Я знаю что есть движок Half Life, который в свою очередь написан на основе движка Quake (или Quake2), который написан на С++
Больше я ничего не знаю. Исходные коды Half Life.
То есть как из каких-то строчек кода:
agrunt.cpp
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Schedule_t* GetSchedule ( void );
    Schedule_t* GetScheduleOfType ( int Type );
    BOOL FCanCheckAttacks ( void );
    BOOL CheckMeleeAttack1 ( float flDot, float flDist );
    BOOL CheckRangeAttack1 ( float flDot, float flDist );
    void StartTask ( Task_t *pTask );
    void AlertSound( void );
    void DeathSound ( void );
    void PainSound ( void );
    void AttackSound ( void );
    void PrescheduleThink ( void );
    void TraceAttack( entvars_t *pevAttacker, float flDamage, Vector vecDir, TraceResult *ptr, int bitsDamageType);
    int IRelationship( CBaseEntity *pTarget );
    void StopTalking ( void );
    BOOL ShouldSpeak( void );
    CUSTOM_SCHEDULES;
 
    virtual int     Save( CSave &save );
    virtual int     Restore( CRestore &restore );
    static  TYPEDESCRIPTION m_SaveData[];
 
    static const char *pAttackHitSounds[];
    static const char *pAttackMissSounds[];
    static const char *pAttackSounds[];
    static const char *pDieSounds[];
    static const char *pPainSounds[];
    static const char *pIdleSounds[];
    static const char *pAlertSounds[];
 
    BOOL    m_fCanHornetAttack;
    float   m_flNextHornetAttackCheck;
 
    float m_flNextPainTime;
 
    // three hacky fields for speech stuff. These don't really need to be saved.
    float   m_flNextSpeakTime;
    float   m_flNextWordTime;
    int     m_iLastWord;
};
LINK_ENTITY_TO_CLASS( monster_alien_grunt, CAGrunt );
 
TYPEDESCRIPTION CAGrunt::m_SaveData[] = 
{
    DEFINE_FIELD( CAGrunt, m_fCanHornetAttack, FIELD_BOOLEAN ),
    DEFINE_FIELD( CAGrunt, m_flNextHornetAttackCheck, FIELD_TIME ),
    DEFINE_FIELD( CAGrunt, m_flNextPainTime, FIELD_TIME ),
    DEFINE_FIELD( CAGrunt, m_flNextSpeakTime, FIELD_TIME ),
    DEFINE_FIELD( CAGrunt, m_flNextWordTime, FIELD_TIME ),
    DEFINE_FIELD( CAGrunt, m_iLastWord, FIELD_INTEGER ),
};
 
IMPLEMENT_SAVERESTORE( CAGrunt, CSquadMonster );
 
const char *CAGrunt::pAttackHitSounds[] = 
{
    "zombie/claw_strike1.wav",
    "zombie/claw_strike2.wav",
    "zombie/claw_strike3.wav",
};
 
const char *CAGrunt::pAttackMissSounds[] = 
{
    "zombie/claw_miss1.wav",
    "zombie/claw_miss2.wav",
};
 
const char *CAGrunt::pAttackSounds[] =
Можно повлиять на то как будет выглядеть рука персонажа, как она будет двигаться и прочие чисто визуальные вещи?
Куда копируют текстуры руки и как их связывают с кодом?
Зачем писать какой-то движок если можно просто написать код?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2016, 02:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как пишут игры и движки к ним? Witcher 3 (Игровые движки):

2д движки или где хранить карту игры
пишу вот маленькую игру на С++, на SFML. Хрананение карты в виде двумерного...

На каком языке\движке пишут Коллекционные карточные игры?
Коллекционная карточная игра КАК ТО: Magic: The Gathering, Warhammer 40,000,...

Какие игровые движки позволяют создавать софт и игры для виртуальных очков?
ну что, приложение Google Earth VR для виртуального шлема HTC vive доступно. ...

Как Вы думаете игровые движки типа Dunia Engine после компилевки в каком формате используются? в dll?
Вообще прочитал что такое игровой движок на википедии. но на самом деле...

Игровые движки пишут сначала на c++ без использования WinAPI объясните как?
Здравствуйте!Модераторы похожих вопросов у меня много но конкретного ответа я...

Как тут пишут игры?
Все доброго времени суток, подскажите пожалуйста, как народ тут игрульки пишет?...

5
Ninec
2 / 2 / 0
Регистрация: 19.06.2015
Сообщений: 124
Записей в блоге: 1
Завершенные тесты: 1
30.07.2016, 02:54  [ТС] #2
0
Миниатюры
Как пишут игры и движки к ним? Witcher 3  
Fulcrum_013
Заблокирован
30.07.2016, 06:21 #3
Цитата Сообщение от Ninec Посмотреть сообщение
Зачем писать какой-то движок если можно просто написать код?
Затем что тыкнуть мышкой и выбрать какая текстура на какой руке и нажать кнопку саве на несколько порядков быстрее и проще чем найти это место в коде, перекомпилировать все и при этом еще нигде невзначай не накосятчить

Добавлено через 3 часа 11 минут
Цитата Сообщение от Ninec Посмотреть сообщение
Куда копируют текстуры руки и как их связывают с кодом?
Никак.
Цитата Сообщение от Ninec Посмотреть сообщение
Можно повлиять на то как будет выглядеть рука персонажа, как она будет двигаться и прочие чисто визуальные вещи
Ищи где то в датапаке текстуру привязанную к руке перса и анимацию там их и меняй
0
8Observer8
2040 / 1333 / 217
Регистрация: 05.10.2013
Сообщений: 4,232
Записей в блоге: 56
01.08.2016, 07:58 #4
Цитата Сообщение от Ninec Посмотреть сообщение
Можно повлиять на то как будет выглядеть рука персонажа, как она будет двигаться и прочие чисто визуальные вещи?
Когда вы делаете свою игру, то вы или кто-то может сделать персонажей и окружение, например, в бесплатном 3D пакете для моделирования Blender

Обычно есть люди, которые специализируются на моделировании персонажей и есть отдельно те, кто занимается анимированием, а часто это умеет один и тот же человек. Для анимирования персонажей в Blender'е есть свои инструменты

Потом вы экспортируете модель персонажа (анимации, кости и отдельно текстуры), например, в файл формата FBX. Далее, вы можете загрузить файл FBX и текстуры в один из бесплатных движков: CryEngine 5, Unreal Engine 4, Unity 5

Все три движка написаны на C++, но первые два используют для скриптинга C++, а Unity использует C#. Мне лично C# нравится намного больше чем С++.

Цитата Сообщение от Ninec Посмотреть сообщение
Зачем писать какой-то движок если можно просто написать код?
Это очень долго объяснять. Примерно лет через пять сами поймёте, а может раньше или позже.
0
godmode
43 / 43 / 7
Регистрация: 26.12.2014
Сообщений: 189
01.08.2016, 19:02 #5
Цитата Сообщение от Ninec Посмотреть сообщение
Зачем писать какой-то движок если можно просто написать код?
Ты раскрыл заговор.
0
8Observer8
2040 / 1333 / 217
Регистрация: 05.10.2013
Сообщений: 4,232
Записей в блоге: 56
02.08.2016, 07:10 #6
Я думаю, что автор темы начнёт писать без движка, а потом поймёт, что нужно писать движок, а потом, что нужно брать один из бесплатных движков. К тому времени пройдёт примерно лет 5.
0
02.08.2016, 07:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2016, 07:10
Привет! Вот еще темы с решениями:

Объясните, как пишут игры и что для этого нужно знать
Добрый день,сразу предупреждаю и извиняюсь за то,что вопрос скорее всего будет...

На C# пишут игры?
На C# пишут игры?

На чем пишут Linux игры?
Здравствуйте уважаемые друзья, хотел бы у вас поинтересоваться. На чем пишут...

Движки или вспомогательные программы для 2D игры на с++
Ну я как бы новичок подскажите или на уроки киньте ссылки:)


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru