|
22 / 10 / 2
Регистрация: 25.06.2018
Сообщений: 155
|
|
Нужны советы по разработке игр30.11.2018, 17:04. Показов 12512. Ответов 209
Метки нет (Все метки)
Здравствуйте,Я давно мечтаю создавать свои онлайн игры, Сейчас освоил базу си, покопавшись в нем понял что игр хороших на нем не слепишь, ни один день скитаюсь по форумам, читаю статьи и Решил. Начну изучать C++. Я знаю что разработка игр это нелегко и мне много чего нужно узнать, Я не знаю с чего начать. Сейчас любой совет на вес золота.
А больше мне нравится кодить и придумывать сценарий. Для моих будущих игр я уже придумал частичто свою историю. Может это и покажется странным, но когда я смотрю прохождение игр, у меня включается во мне разработчик, и я начинаю думать с точки зрения разработчика. Как какая то механика могла быть реализована в коде. Вобщем Буду очень благодарен вашим Любым полезным советам!
0
|
|
| 30.11.2018, 17:04 | |
|
Ответы с готовыми решениями:
209
Нужны советы по разработке игр Нужны советы по разработке приложения под Android |
| 18.01.2019, 13:18 | |
|
Не по теме: Что за манера разбивать посты на цитаты и паралельно обсуждать отдельные вырванные из контекста мысли. Как тролль с деятилетним стажем, ответственно сообщаю. Это неэстетично.
0
|
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||
| 18.01.2019, 13:55 | ||||||
|
Добавлено через 8 минут Добавлено через 2 минуты Добавлено через 10 минут Добавлено через 12 минут А интерфейсы вообще дело десятое. К примеру 75% современных САПР при всем их разнообразии сделаны на одном геометрическом движке. И при этом никто при его разработке никаких демок и т.д. не выпкскал. Там просто хорошо подумали, годик покодили скромной командой из одного единственного доктора наук, и результат сразу начал вытеснять с рынка все остальное.
0
|
||||||
|
4144 / 2722 / 433
Регистрация: 09.09.2017
Сообщений: 12,055
|
|||||||||||
| 18.01.2019, 14:01 | |||||||||||
|
Как одной только стандартной библиотекой реализовать доступ к COM-порту? Как открыть канал (pipe), как изменить права доступа к файлу? ![]() . Впрочем, ваши высказывания про способы разработки и тестирования, про переносимость, модульную разработку, теорию и практику разработки уже сказали достаточно о вашем уровне. Засим не буду отвлекать от сбора требований и теоретического материала для вашей игры. Которую вы, разумеется, будете делать без тестирования, на основе универсальных безглючных библиотек... точнее, стандартной Си-шной библиотеки, ведь остальное - ересь... Которая будет прекрасно компилироваться под все известные человечеству операционные системы от суперкомпьютеров до RTOS в стиральной машине. Когда... если доделаете, выложите хотя бы демку полюбоваться на результат самого лучшего подхода к разработке.
0
|
|||||||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||||
| 18.01.2019, 14:54 | |||||||
|
А интерфейсы пользователя вообще дело десятое. К примеру 75% современных САПР при всем их разнообразии сделаны на одном геометрическом движке. И при этом никто при его разработке никаких демок и т.д. не выпкскал. Там просто хорошо подумали, годик покодили скромной командой из одного единственного доктора наук, и результат сразу начал вытеснять с рынка все остальное. При этом главный фишкан из за которого оно вынесло все был даже не в том что система счета позволяла перейти к революционному в плане удобства интерфейсу с лентой редактирования позволяющей изменять параметры предыдущих команд, а не только откатывать, моделированием от 3D, и автоматическим/полуавтоматическим построением чертежей из 3D модели, а в первую очередь благодаря универсальному формату хранения геометрии построенных моделей, позволяющему обмениваться готовыми моделями между любыми САПР сделанными на этом движке, и при этом дальнейшее редактирование типа сверления отверстий по месту сборки и т.д. делать уже в том САПР в который модель импортирована. Вот вам и универсальный набор кирпичиков (примитивов и опреаций над ними) для описания моделей,без которого создание такого функционала в принципе невозможно. Добавлено через 2 минуты Добавлено через 5 минут Добавлено через 25 минут Возьмем для примера ту же STL. Лично вы хотя бы с одним багом в ней когда нибудь столкнулись или лично знаете хотя бы кого то кто с ними сталкивался? А юнит-тесты для нее когда нибудь прогоняли или хотя бы видели? А вот отладочный вывод там таки очень часто где встречается так же как и тотальная декомпозиция. И при этом если что то и рефакторят, то таки интерфейс преимущественно в сторону расширения, а реализация основных контейнеров и т.д. еще Страуструпом в бытность его молодым падаваном была запилена собственноручно. Добавлено через 14 минут Добавлено через 2 минуты
0
|
|||||||
|
4144 / 2722 / 433
Регистрация: 09.09.2017
Сообщений: 12,055
|
|||||||
| 18.01.2019, 15:10 | |||||||
|
Впрочем, чисто из любопытства - какую альтернативу вы предлагаете? Вот есть у нас функция, жестко завязанная на winapi, для определенности пусть будет создание канала. Канал штука платформо-зависимая и в стандартной библиотеке этого все равно нет. И надо эту функцию портировать на Linux. Каким образом вы проверите ее работоспособность? Добавлено через 6 минут Вообще-то, это набор портов для записи и чтения. Для COM1 они расположены по адресам 0x3F8, 0x3F9. И именно так он выглядит для ядра ОС, и именно так его программировали до winNT. И точно так же (с учетом другого назначения портов) это делается в микроконтроллерах. Это современные ОС могут отображать его на файл, но не обязаны. Да и как вы через "чистый файл" будете задавать скорость работы, контроль четности и т.п.?
0
|
|||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||||||||
| 18.01.2019, 16:25 | ||||||||||||
|
Добавлено через 24 минуты Вообще "подход все есть файл" - это основной фишкан который внес юникс, и благодаря которому он в свое время так резко взлетел. Остальные с тех пор идут по его стопам. Потому что верно товарищ Томпсон в свое время подметил что любое устройство ввода-вывода вне зависимости от его физической конструкции можно предстваить как поток. И вот как раз унифицированным оборачиванием всего этого и должна заниматься стандартная библиотека в первую очередь, а не той чепухой которую в нее появилась мода напихивать через край, и которая даже если и годна для многого, по определению мало для чего лучшая (хотя к примеру в плюсах степень подстраиваемости средств стандартной библиотеки к конкретной задаче можно сделать на несколько порядков выше). Добавлено через 10 минут Добавлено через 1 минуту Добавлено через 13 минут Добавлено через 1 минуту Добавлено через 15 минут
0
|
||||||||||||
|
4144 / 2722 / 433
Регистрация: 09.09.2017
Сообщений: 12,055
|
|||||||||||||
| 18.01.2019, 16:42 | |||||||||||||
|
. В общем, как я уже говорил, ваш уровень понятен. Я надеялся узнать из диалога что-то новое о разработке, но, очевидно, не судьба. На этом предлагаю прекратить дискуссию. Добавлено через 7 минут На самом деле, функция может вернуть 0 и сказать что места для данных нет. Может зациклиться в ожидании появления в канале данных. Может вместо нормальных данных вернуть какой-то мусор. Соответственно, тест будет в передаче последовательности данных разного размера, меньше буфера и больше, проверка как функция реагирует на переполнение и опустошение, на различные права доступа и т.п. Все это прекрасно тестируется автоматически. Гораздо проще, надежнее и универсальнее, чем вбивать те же тесты вручную.
0
|
|||||||||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||
| 18.01.2019, 16:55 | |||||
|
Добавлено через 5 минут Добавлено через 3 минуты Добавлено через 2 минуты
0
|
|||||
|
83 / 20 / 0
Регистрация: 30.10.2018
Сообщений: 106
|
|
| 18.01.2019, 17:01 | |
|
парень, скорее всего, хочет создавать far cry'и, gta'шки, god of war'ы, а не онлайн змейки в браузере
0
|
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||
| 18.01.2019, 17:15 | ||||
|
Добавлено через 2 минуты Добавлено через 8 минут
0
|
||||
|
4144 / 2722 / 433
Регистрация: 09.09.2017
Сообщений: 12,055
|
|||||||
| 18.01.2019, 17:33 | |||||||
|
Но как это опровергает мое высказывание о том, что одной теории недостаточно для написания программы?
0
|
|||||||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 649
|
||
| 18.01.2019, 17:38 | ||
|
Или вот живой пример с этого форума: https://www.cyberforum.ru/c-li... 70090.html вы же не застрахованы от того, что какой-то добрый человек из апстрима стандартной библиотеки переводя с mmap на malloc файловые буфера на полуживой платформе сломает ваш прекрасный фреймворк. А тесты словили б такое сразу...
0
|
||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||||||||
| 18.01.2019, 18:29 | |||||||||||
|
Добавлено через 3 минуты Добавлено через 19 минут [ Добавлено через 3 минуты Добавлено через 3 минуты Добавлено через 3 минуты Добавлено через 5 минут Добавлено через 9 минут
0
|
|||||||||||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 649
|
|||||
| 18.01.2019, 18:47 | |||||
|
То что бранч тесты выигрывают по всем параметрам окромя затрачиваемого на них времени у юнитов вроде и ежу понятно. То, что и они не являются золотой пулей вроде то же не кто не спорит... Так о чем речь? Вообще такое ощущение, что спор идет о том сколько думать нужно перед тем как трясти начинать...
0
|
|||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||
| 18.01.2019, 19:40 | ||||
|
Мало того, если при всем при этом еще и метапрограммирование используется, прийдется еще весь подобный набор сделать для каждого из возможных вариантов инстансирования с учетом всех SFINAE и т.д. и gjkyjcnm. перерабатывать все тесты при малейшем чихе в сторону рефакторинга. Что в общем то и вообще не возможно, и метапрограммирование всякого смысла лишает, и невменяемо в плане подготовки контрольных данных.
Добавлено через 19 минут Добавлено через 5 минут Добавлено через 25 минут
0
|
||||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 649
|
||||||
| 18.01.2019, 19:52 | ||||||
Добавлено через 11 минут
0
|
||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||
| 19.01.2019, 11:01 | ||||||
|
Что сделать абсолютно реально. А то во что их сейчас превратили стандартные библиотеки - это вообще результат чрезмерного и ненужного увлечения нишевыми скриптами, не пригодными для написания на них эффективных библиотек даже базовых стркуткур данных для себя самих. При этом вездеходом подобные скрипты стать не могут априори. Основная то проблема мультиплатформы как раз в различиях в оконном апи современных осей, а не в различиях процов которые банально перекомпиляцией или докомпиляцией из промежуточного представления в машкод еще в 70-х нивелировать научились. И библиотеки таких базовых структур данных на все случаи жизни типа сделать искоробочными - ну тоже малореально. Требования к их реализации у разных случаев жизни очень уж противоречивы. Хотя для плюсов почти абсолютную настраиваемость поиметь реально. Но если это и делать то начинать нужно со стандартизации бинарных форматов буферов и т.п. Иначе промеж dll и прочими вариантами либ как пихали сишные строки и массивы через сырые указатели так и будут пихать. А сама stl из средства для топ-разрабов все больше и больше превращается в средство защиты даже не от дурака, а от полного идиота. Взять те же счетчики которые без вариантов атомарные. На кой спрашивается без вариантов атомарные, если и ежу понятно что параллелить надо или в режиме разделения ресурсов или в другом месте, а как результат и счетчиков атомарных нужно подавляющее меньшинство и то в исключительных случаях? Добавлено через 3 часа 34 минуты А как то просили рабочий стол виндоузы заменить своей прогой так чтобы кроме нее вооще ниче не запускалось и оффисный планктон на работе пасьянвы не раскладывал. Ну это как бы не прогу рефакторить надо было а самую малость реестр чтобы вместо эксплорера запустится и присобачить небольшой лаунчер который следил чтобы ничего другого открыть нельзя было включая диспетчер задач. Ну а если серьезно то ли мне такие задачи попадались то ли хрен его, но общая суть сводилась к тому чтобы заменить всего один элемент системы - а именно прокладку между стулом и клавиатурой на что нибудь более адекватное. Хотя были и немного другого характера - заменить комп шкафного базирования на современный, при условии что исходники давно потерялись а те кто их писал давно умерли, но так чтобы при этом убиенные зайцы лежали в тех же местах и в тех же позах. Изводить кротов и даже мамонтов при этом тоже никак не запрещалось. Ну а если совсем по наукам и теориям то в общем то никто кроме разраба не знает что вообще и где нужно делать а тем более менять. А на практике всем включая заказчика сугубо пофигу каким образом оно работает главное чтобы оно делало то что нужно. При этом заказчика и т.п. колыхает только результат. А именно сколько прокладок между стулом и клавиатурой оный софт заменяет. И как сделать эту циферь побольше никто кроме разраба который анализировал предметную область не знает в принципе. Так что просить что то переделать во первых особо и не кому а во вторых особо и нечего. А в главных там где не справляется заклинание "настройки" избежать рефакторинга и отделаться только расширением номенклатуры очень сильно помогает заклинание "полиморфизм". Хотя опять же во многих предметных областях набор сущностей и механизмов взаимодействий между ними которые которые видны/управляемы юзверем четко ограничен логикой предметной области и ни добавить ни убрать ничего нельзя в принципе. Добавлено через 11 часов 1 минуту То же самое в принципе касается и режимов sctp. А особенно многоканального режима который полностью соответствует многопоточному файлу, чего в TCP еще нету.
0
|
||||||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 649
|
|||
| 19.01.2019, 12:13 | |||
|
Банальные AF_UNIX сокеты под которые собственно и рожали концепт беркли сокетов, не смогли полностью подвести под файловый интерфейс. Причем тут TCP и UDP? Причем тут похожесть (именно похожесть, не соответствие) SCTP на многопоточный файл? С таким же успехом можно сравнивать с ныне почившим концептом STREAMS из "настоящих" юниксов, который кстати тоже не укладывался полностью под файловый интерфейс. Сейчас наверное можно было бы полностью подвести сокеты под файл аля FUSE "/socket/host/port/proto/mode", но как сложилось так и повелось. А ведь кроме упомянутых уже com-портов(tty) и сокетов еще достаточно много IPC сущностей занимающихся передачей данных и не вписывающихся под файловый интерфейс. И нужна ли для них стандартная унифицирующая обертка или пусть все остается как есть. Касательно тех же сокетов большинству нужна библиотека реализующая простейший (ныне обычно HTTP) клиент, а не сокеты как таковые. А оставшееся меньшинство разберется и с тем как оно есть сейчас. Зачем же плодить новые сущности в стандартных библиотеках, тем более часть этих библиотек должна жить и в free-standing средах.
0
|
|||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||
| 19.01.2019, 12:42 | |||||
|
Добавлено через 7 минут
0
|
|||||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 649
|
|||||||
| 19.01.2019, 13:27 | |||||||
Но к тому что появиться, а что нет в стандартных библиотеках это имеет мало отношения, тут больше влияет кто именно в комитете сидит. опять же это имхо.
0
|
|||||||
| 19.01.2019, 13:27 | |
|
Собираю PC для игр. Нужны советы! Компьютер для игр ( нужны советы ) Советы по разработке классов Советы по разработке алгоритма Советы в разработке БД: составления расписания в ВУЗе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 25.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|