Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 15.11.2017, 21:19   #21
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Адрес: Беларусь,город брест
Сообщений: 100
Репутация: 10
По умолчанию

я буду сконцентрирован на физике(и колизие) .
Это была моя первая и главная цель.
SerEngine вне форума   Ответить с цитированием
Старый 15.11.2017, 22:42   #22
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Адрес: Беларусь,город брест
Сообщений: 100
Репутация: 10
По умолчанию

Так ты настоящий coremission или нет?
SerEngine вне форума   Ответить с цитированием
Старый 16.11.2017, 13:11   #23
coremission
Форумчанин
 
Регистрация: 09.11.2017
Адрес: Из Санкт-Петербурга
Сообщений: 74
Репутация: 11
По умолчанию

Цитата:
Сообщение от SerEngine Посмотреть сообщение
Так ты настоящий coremission или нет?
что значит "настоящий"? я один. Блог пишу я, да.


Цитата:
Сообщение от SerEngine Посмотреть сообщение
я буду сконцентрирован на физике(и колизие) .
Это была моя первая и главная цель.
А что у вас уже есть? И чего будете делать? Мне физика не интересна, но если что-то полезное будете рассказывать - почитаю
__________________
Профессионально программирую видео-игры. Пишу бекстейдж-блог о разработке игр CoreMission.net
coremission вне форума   Ответить с цитированием
Старый 16.11.2017, 17:22   #24
alexzk
Участник клуба
 
Регистрация: 12.04.2017
Сообщений: 774
Репутация: 168
По умолчанию

Цитата:
Сообщение от SerEngine Посмотреть сообщение
первым нужно сделать управление клавиатурой(что-бы принимать значения true и false)
Дарю, пока бесплатно:

Код:

void upravlenieKlaviaturoy(int true_ili_false)
{
}

Думаю, это полностью соответствует вашему заданию. Хотя можно и немного другой вариант:

Код:

void upravlenieKlaviaturoy(bool znachenie)
{
}

Я не совсем уверен, но они полюбому взаимозаменяемы

Последний раз редактировалось alexzk; 16.11.2017 в 17:25.
alexzk вне форума   Ответить с цитированием
Старый 16.11.2017, 19:36   #25
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Адрес: Беларусь,город брест
Сообщений: 100
Репутация: 10
По умолчанию

Я сделал управление клавиатурой :-)
SerEngine вне форума   Ответить с цитированием
Старый 16.11.2017, 22:07   #26
Pavia
Лис
Профессионал
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 1,427
Репутация: 1499
По умолчанию

SerEngine
Для того чтобы сделать проект его надо грамотно вести. Вначале надо определить цель. Ведь как иначе мы узнаем, чего мы достигли? Во вторых нужно ТЗ в котором будут основные параметры и критерии по которым можно будет проверить толи мы сделали или не то, что хотели. Перед разработкой ТЗ ещё происходит эскизное проектирование, когда делается первый набросок будущей программы.
1) Состав. Нужна схема деления в которой обозначить какие модули, класса и какие функции мы будем делать, а какие мы позаимствуем готовые.
2) Сроки разработки. Срок должен быть численно обоснован. Засеките время разработки одной функции и посчитайте сколько времени вам нужно на разработку всей программы.
Это очень грубый расчёт. 9 беременных женщин не родят ребёнка за месяц.
Поэтому вам понадобиться разбить проект на стадии и сдавать его поэтапно.
Пусть будет 3 этапа. Но в каждом этапе есть вещи которые не могут быть выполнены параллельно.
Поэтому что-бы с планировать вам понадобиться диаграмма Гранда.
И хотя-бы знать основы проектирования описанные в книге Мифический человека месяц.
3) Отладка занимает 90% времени, чтобы снизить эти затраты применяют тестирование. Тестирование бывает разных видов.
Самые простые тесты это тесты на соответствие требованиям ТЗ. Их лучше заготовить заранее - или хотя бы начать. Вторые тесты которые я бы вам рекомендовал это тесты моделирующие поведения пользователя, в вашем случае прикладного программиста который будет использовать ваш движок.
Тут вам придётся нарисовать ещё один график. Рассмотрите частые задачи которые решают с использованием движка, распишите действий или последовательности.
При этом вы увидите что некоторые действия повторяются и их можно объединить.
Тут советую прочитать про мозговые карты.
Обычно это рисуется в виде кейсов(варианты использования)

Определившись с вариантами использования вы сможете расписать функциональные требования и подготовить приёмосдаточные тесты.

4) Документирование. Самодокументированный код не отменяет документирования так как есть куча скрытой информации и разные взгляды на проблему или предмет. Оно так же потребуется. На каждый класс надо будет описать общие идеи. Лучше всего исходить из принципов контрактного программирования. Если в команде каждый пишет свой модуль, то описав общие требования, общие условия к объектам вы сможете разделить работу.

Как минимум так как вам интересна физика у вас будут временные рамки в которые ваш движок должен укладываться. Их тоже следует описать - диаграммы на этот раз считаю излишними.

Что осталось? Осталось ещё техническая сторона. Вы должны написать реферат в котором будете сравнивать алгоритмы и структуры данных, а также шаблоны проектирования которые хотите использовать в своём проекте.

----------------------------------
Это конечно всё хорошо, но нулевой этап проектирование может затянуться надолго. Поэтому что-бы не затягивать упрощать, упрощать и ещё раз упрощать.
В конце концов рефакторинг не кто не отменял. Это запланированное переписывание отдельных частей, небольшые правки реализуемые еженедельно или ежедневно с целью сохранения качества кода и недопущения его сваливания в спагетти-код. Не более 2-х циклов в функции не более 2-х if'ов, верно подобранные имена.- Лучше короткие функции, но пусть их будет много. Чем сложно читаемые портянки кода.

И вообще по максимуму используйте готовый код и разнообразные утилиты.
__________________
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума   Ответить с цитированием
Старый 07.04.2018, 04:40   #27
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Адрес: Беларусь,город брест
Сообщений: 100
Репутация: 10
По умолчанию

Я делаю физику
SerEngine вне форума   Ответить с цитированием
Старый 07.04.2018, 04:47   #28
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Адрес: Беларусь,город брест
Сообщений: 100
Репутация: 10
По умолчанию

Буду этого придерживаться.
SerEngine вне форума   Ответить с цитированием
Старый 18.04.2018, 11:13   #29
rrrFer
Санитар
Профессионал
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,586
Репутация: 972

icq: 395546218
skype: rrrfer.rrrfer
По умолчанию

Вы еще пишите этот движок? xD и по прежнему без ТЗ ищите сообщников?

Что касается схемы - то это:
Цитата:
Сообщение от Pavia Посмотреть сообщение
1) Состав. Нужна схема деления в которой обозначить какие модули, класса и какие функции мы будем делать, а какие мы позаимствуем готовые.
Я бы делал это после составления ТЗ. На настоящий момент не понятно какого типа движок вообще будет - 2д/3д, будет ли там физика и т.п. Сначала определитесь что именно вы делаете, опишите функциональность, а потом уже ищите модули которые часть этой функциональности реализуют.

Цитата:
Сообщение от Pavia Посмотреть сообщение
2) Сроки разработки. Срок должен быть численно обоснован. Засеките время разработки одной функции и посчитайте сколько времени вам нужно на разработку всей программы.
Сроки... ну автор топика уже пол года потратил. Сделал какое-то управление клавиатурой (непонятно что это такое вообще и как связано с движком). Если из этого выводить сроки разработки всего движка - то уйдет пара тысяч лет, не меньше ))

Цитата:
Сообщение от Pavia Посмотреть сообщение
3) Отладка занимает 90% времени
Ой, пара тысяч лет - это без отладки...

А вообще я недавно статью про разработку игр с фреймворком Qt запилил. Есть две готовые игрушки, при этом первая написана году так в 2014. Обе на гугл плей (можно поиграть). Последняя вообще нормально играется, хотя кода там тысячи полторы строк...


Цитата:
Сообщение от SerEngine Посмотреть сообщение
Я сделал управление клавиатурой :-)
Нахрена оно нужно на телефоне например? Ты для какой платформы движок делаешь? Составь ТЗ, ептиль.
__________________
Мой блог о программировании и туризме
Надежный и недорогой хостинг сайтов (держу на нем свой блог и вам советую)
rrrFer вне форума   Ответить с цитированием
Старый 18.04.2018, 11:19   #30
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 15,990
Репутация: 3110

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от rrrFer Посмотреть сообщение
Вы еще пишите этот движок? xD и по прежнему без ТЗ ищите сообщников?
Да.
http://www.programmersforum.ru/showthread.php?t=318046

Ну ТЗ лучше с ними и составлять, а вот для их привлечения нужно не ТЗ, а адекватное объяснение зачем это нужно.
Alex11223 на форуме   Ответить с цитированием
Ответ

Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создать движок для игры для Андроид. Mark_Avrely Фриланс 2 17.06.2017 23:40
Движок для 2D игры ( выбор движка для Delphi ) TUberwer Gamedev - cоздание игр: Unity, OpenGL, DirectX 8 20.03.2014 18:43
Кто хочет принять участие в создании компютерной игры? MaratZahidyl Фриланс 19 09.11.2011 18:55
Создание программы-аналога игры Кто хочет стать миллионером s4shk4 Помощь студентам 28 04.02.2011 16:06


11:18.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru