С одним знакомым решили заняться инди-играми. Он художник (и не от слова худо!), я немного программист :)GameMaker не понравился. Какие есть аналоги?nitrix09 ноября 2010, 20:33110
Multimedia Fusion.
аналоги это конструкторы?
Если да, то Unity3d и Unreal Development Kit. Оба, кстати, бесплатны для инди-игр.
Если надо 2д то могу порекомендовать разве что BlitzMax, но от Game Maker он далеко, там по сравнению с Game Maker "чистое" программирование
Multimedia Fusion 2, как сказал Jazz, разобраться в интерфейсе, поизучать кучу примеров. Но честно далеко от тех же примеров я не ушел, а год назад на оф сайте уже выложили hwa версию, но чтобы все обновления и фиксы на нее шли и прога превратилась в более совершенную по всяким фишкам и примочкам, нужно выложить 300 баксов за лицензию...я этого пока не сделал:) Форум англоязыйчный, народу там куча, а русские фан сайты никуда не ушли в этом деле. Наверняка щас есть чтонибудь получше...бесплатный unreal development kid?:D ..3д игры и ....куча работы.
Вообще, «со знакомым решили заняться инди-играми» это слишком расплывчато. Давайте определим жанр. Для ролёвок есть, например, RPGMaker, для квестов Wintermute Engine...
платформеры собираемся делать, возможно какие-нибудь песочницы
"какие нибудь" - тоже очень расплывчатое определение. Соберитесь с мыслями, желаниями, возможностями, напишите концепт-документ - тогда и выбирайте инструмент. Каждой задаче - свой молоток!
Честно говоря MF2 ниочень... Почитал я сейчас пафосные описания этого пакета в надежде найти воможности, но не нашёл ничего кроме пафоса.
И насколько я видел по качеству игры сделанные на GM превосходят игры сделанные на MF2.
И я говорю как человек имеющий большую практику работы с разными языками программирования. Лучше чем GameMaker в плане простоты, наглядности и возможностей, я ничего пока что не видел. Единственная проблема - производительность, и то она решается. Вообще все проблемы в GameMaker решются с помощью DLL. Что-то не устраивает? Пиши DLL!
Да и сейчас для него куча DLL класных существует: для работы со звуком, с видео, с 3Д, даже с флэшем...
Другое дело, что на GM слишком много шлака выходит, но так оно и правильно - это лишь означает что он очень доступен, прост в понимании и разобраться может любой желающий, а уж сколько скрыто сложного под кажущейся сперва простотой... ухххх...
К тому же по цене ГМ дешевле чем MF2. Гораздо.
Кстати ещё есть аналог - Construct вроде, но он немного по другому называется сейчас.
Про Unity3D и unreal development kid ничего сказать не могу, т.к. 3Д играми не занимаюсь - и в 2Д пространстве ещё поле непаханное идей валяется.
Так что у меня вопрос: чем конкретно не нравится GameMaker?
- смысл тогда использовать движок?
не знаю :) мне скриптов за глаза хватает
ну блин, ты как маленький ей богу... каждый твой коммент разочаровывает меня всё больше и больше (особенно пост "рынок решает").
Так вот открываю тебе, видимо, сакральные знания:
ГМ даёт отличную основу, отличный API для создания игр, который можно ДОПОЛНИТЬ или ЗАМЕНИТЬ если что-то не устраивает.
Я вот так же могу рассуждать:
Существует куча шаблонов сайтов, но мне всё равно придётся писать на php или html чтобы написать свой, тогда смысл использовать шаблон, если я могу сам всё написать с нуля?
А чё? Идёмте тогда все на Ассемблере писать игры - там и производительность высокая будет... только вот есть мааааленькая проблемка... Здесь есть люди которые могут мыслить в машинных кодах?
Когда лезешь делать ДЛЛ - нужно более глубоко знать программирование, чем для того чтобы просто делать игры.
Но да, я не совсем точно выразился. Не обязательно писать ДЛЛ самому - можно использовать уже написанные. А использование ДЛЛ - дело не такое уж и сложное.
А смысл всего этого - в экономии времени - САМОГО ценного ресурса во всём мире...
Я разочарован, что ты этого не понимаешь.
- боже, как я расстроен, Мастер.
вот именно - главная проблема производительность.
мы сделали всего лишь маленькую игру (да не игру даже, а так, мелкое развлечение). эта штуковина съедает всего 400-500 мб виртуальной памяти, но умудряется в топ загрузить четырехъядерный процессор. видимо не рассчитана она на многопоточность...
«Всего» 400-500 метров?..
это же немного -_-
даже FireFox ест 150мб...
Ну так, это не «даже», это «аж целый» Firefox, весьма требовательное в этом плане приложение... :)
500 метров оперативки для игры, сделанной (как я понял) на гамаке, - это зрелищно!
может у меня одного так ?
игры с GameMaker почему-то очень прожорливы
Это просто отличная иллюстрация на тему того, что происходящее внутри движка «разработчику» неведомо. Отсюда и такие вопросы...
ага. делаю игру прожорливую в плане графики, жрёт 25 Мб с копейками и ЦП грузит дай бог если на 16%
Советую ознакомиться. У меня на Gaminator'e 5-м возникли те же проблемы. Не обратил внимания на загруженность ЦП. А она была, будь здоров)
Имхо, GM просто изначально предназначен для простеньких игрушек. Для чего-то большего придется повозиться с загрузкой/выгрузкой всего (не)нужного. И стараться экономить на всём, на чем можно. В общем то, довольно правильный путь в программировании :)
А вы попробуйте во что-нибудь флешевское поиграть.
Я вот когда в transformice играю, через некоторое время могу наблюдать, как опера давится, но впихивает себя в 900+ Мб. А поскольку у меня всего 512 и винда своё старается кушать исправно, довольно быстро начинается сливание всего и вся в своп-файл. Это ужасно)
Ну я как бы не знаю что за игру вы сделали, ведь многое зависит от изгибов рук разработчиков... можно конечно в событие step зафигачить цикл на 1000, или событии draw загружать всё время бэкграунд, а смысл...
Скажи, а игра ваша при этом тормозила? И каким образом вы брали информацию?
Я вот когда даже сложные игры на ГМ делаю, у меня оперативка никогда дальше 20 мегов не выползает, как и видео. Да и ЦП забивается не полностью, хоть и одноядерный.
Вот флэш да - это ваще ппц... у меня почти все игры сделанные на флэше на машине тормозят...
Так что всё зависит от того как делать.
Коли рожица крива нефиг на зеркало пинять)))
да игра то была - простенький скролл шутер с одним коротким уровнем.
я же говорю - видимо движок не рассчитан на многопоточность...
игра не тормозила, но долго грузится и невозможно что-либо делать с включенным конструктором
поэтому все приходится делать заранее...
Конечно он не расчитан на многопоточность, как и большинство приложений. Чтобы приложение было многопоточное - его нужно специальным образом писать.
И далеко не все операции можно распараллелить.. Хорошо распараллеливаются только 3Д игры и возможно флэш(в чём я сомневаюсь), потому что в них векторные операции и они отлично распараллеливаются. Ну и в 3Д матрицы тоже распараллеливаются хорошо, и в физике тогда. Но скролшутер распарллелить на несколько ядер - я думаю нереально.
Ну долго грузиться это в зависимости от того, какой у вас компутер, а я предполагаю что он не слабый, тогда может быть дело в том что у вас скорее всего много ресурсов напихано в игру - графика и музыка со звуками...
А всё это дело лучше грузить по мере надобности из внешних файлов. Наверное потому она и кушает у вас памяти много, потому что вы ещё и галочку поставили везде preload, а это значит, что ресурсы будут всё время в оперативной памяти, а как известно GM хранит в оперативке графику в bmp формате, поэтому когда у вас висят всё время в памяти 10 штук фонов, каждый нехилого размера да ещё и спрайты щедро санимированные, то и получается 400-500 мегабайт.
но это лишь мои предположения исходя из опыта.
Как бы надо же ведь ещё оптимизировать всё. Незнание не освобождает от ответственности. Так и в любом языке программирование. Многие ошибки возникают из-за того что программист не знает какие-то особенности данного движка или языка.
Конечно клёво, говорить, что мол мне не нравится ГМ из-за его производительности, подавайте мне другой движок, при этом не попытаться выяснить, действительно ли ГМ настолько тормозной что долго интерпретирует команды или программист ошибся - и не написал код как надо.
Любое, любое нормальное приложение с использованием графической библиотеки разбивается как минимум два потока: в одном обрабатывается логика, в другом отрисовывается графика, если гамак даже этого не умеет (что вряд ли), то... печаль!
- алё, галочка preload в согласии со здравым смыслом должна наоборот теоретически приводить к повышению производительности из-за уменьшения количества чтений файла. Хотя это та ещё система ниппель...
Это не есть многопоточность.
Многопоточность пришла с процессорами Pentium 4 (функция Hyper-Treading), когда процессор разбивался на 1 аппаратное и 1 программное ядро, но на тот момент в силу технологического несовершенства эта функция была нахрен не нужна :)
То, что вы назвали называется не многопоточность, а как-то по другому, увы, не помню как
Ума не приложу, как процессор может быть «программным» ядром.
То, что я описал, это как раз многопоточность. Ещё есть многозадачность, но я про неё ничего не говорил.
вы не поняли. "программное" ядро - мнимое, из-за него процессор воспринимается как двухядерный
Ок. С Hyper-Threading не знаком. В любом случае, речь шла не о том.
решил проблему с тормозами:
привязал гирю к хвосту гепардавыключил лишние с точки зрения движка ядра :)Возьмите какой-нибуь простой, но надёжный движок, например, hge или подобный.
Его точно хватит на не очень сложные проекты.
Это, конечно, сложнее, чем использовать конструкторы, зато больше свободы,
можно делать игру какого угодно жанра, лишь бы в 2d.
В скором времени вы уже будете представлять, какие общие задачи должен
решать движок и как он примерно устроен.
Когда его возможностей перестанет хватать, берёте исходники
и приделываете недостающие фичи, или переделываете имеющийся код.
А потом, возможно, однажды вы решите, что нужно сделать своё,
с нужной вам структурой и логикой, и сделаете вообще с нуля.
Я для 2д использую BlitzMax. Удобен, легок, понятен. Справка конечно не ахти какая удобная, зато есть и русскоязычные ресурсы, в том числе со статьями. BlitzMax как-то более взрослый по сравнению с GM, если хотите дальше развиваться как команда и разработчики - слазьте с конструкторов.
Ну зачем же так грубо... Если что-то более просто в использовании, это не значит что оно менее функциальное и так сказать "детское"...
Из описания не увидел, чем БлитзМах существенно лучше ГМ.
Так что единственное достоинство ИМХО, по описанию возможностей БлитзМакса - это кросплатформенность игр, которые на нём делаются.
Если бы кто-нибудь из здесь обитающих пробовал делать и даже пробовал делать успешно игры для NDS, на С++ и соотвествующим для NDS девкитом, аппладирую стоя... мне уже влом стало разбираться в загрузке изображений, которые грузяться через задницу и храняться не картинками, а массивами с кучей разных масок и хрен пойми ещё как это дело готовить.
Да блин и хватит уже читать ту филосовскую чушь, что я тут пишу, движок - лишь инструмент, а главное - это результат...А результата можно достигнуть разными путями и разными инструментами, выбирайте свой путь и свой инструмент, а главное - поставьте себе цель)))
Нашел конструктор в инете, называется... Constructor. То же самое, что и гм, но бесплатный, имеет возможность добавлять программируемые пиксельные шейдеры, добавлена физический двиг box2d и, как говорят, лучше оптимизирован. Наверное выберу его :)
может, Construct?
да, точно :)
Я про него как раз и говорил в первом своём посте.
Этот двиг я обсирать не буду, т.к. не знаю его возможностей, скажу лишь, что игры которые я видел и были сделанны на этом движке проигрывали играм ГМ по всем фронтам.
Ну и то что он бесплатный... намекает, что скорее всего в нём будет много недочётов (но кто ж знает, программисты всякие бывают).
Но лучше всё увидеть своими глазами.
Так что обязательно напиши своё мнение, когда чё-нить на нём сделаешь)))
Вы видимо мало игр видели, не хочу искать ссылки на примеры с зарубежного офф. форума, но гляньте хотя бы на Русском офф. сайте. http://scirraconstruct.ru/
Так, ну если ТС определился с движком, то я могу закрыть эту тему во избежание флуда и флейма?
все таки остался на GM. Денег-то потраченных жалко ;)
PS: кто имеет опыт в работе с GM, с кем можно будет посоветоваться в случае чего?
Советую обращаться на тематические форумы. Их всего-то несколько штук на русском языке.
кстати, когда только-только начинал "гамачить" гугл выдал ссылку на твой пост про червя на одном из форумов :)
ГМ разве не бесплатный?
Есть бесплатная и платная версии.