![]() |
Ответ: Vivo
Вложений: 1
Благодаря Максу теперь стало возможным сделать градиентный свет!
|
Ответ: Vivo
Реквестирую конфигу чтоб можно былом сменить разрешение и устанавливать оконный режим.
Comic Sans MS - плохой шрифт. |
Ответ: Vivo
Оконный режим сделаю как в Майнкрафте, разрешение пока не знаю. Может тоже на F какой-нибудь. Менюшку делать так долго... И чем Comic Sans плох?
Кстати, можно тему перенести в проекты на Максе? |
Ответ: Vivo
Thanks!
а можно подробнее о пиксмапах? |
Ответ: Vivo
Цитата:
Вся твоя программа использует для работы оперативную память ПК, а визуализация графики происходит с использованием видео памяти. Для того чтоб допустим вывести изображение на экран нужно его сначала считать с жёсткого диска потом преобразовать в нужный для видео карты формат, "закачать изображение" на видео карту и дать напутствие видео карте чтоб она вывела на экран наше изображение. Дак вот в BlitzMax есть класс Image. Он содержит в себе Pixmap и ссылку на хранимое в видеокарте изображение. Pixmap это преобразованный специальным образом для видео карты универсальный набор пикселей. Который позволяет "на лету" менять разрешение экрана и даже сменять в реальном времени GAPI с DirectX на OpenGL например. Он хранится у тебя локально в оперативе компа. И когда стартует 3d девайз или перезапускается (смена разрешения) пиксмапа закачивается в видео память в виде 2D текстуры. Работа с пиксмапой ничего не требует. Вся работа с ней скрыта за тенью LoadImage LoadAnimImage. И ты просто можешь менять разрешение "на лету" не перезагружая заново все ресурсы как бы это надо было бы делать в Blitz3D. |
Ответ: Vivo
Можете подсказать, как обычно делается физика в платформерах? Меня волнует именно прыжки. Я решил перенести Виво на вид сбоку, и наткнулся на проблему с прыжками. Дело в том, что есть погрешность в пару пикселей . Подумав что это нормально, ведь нельзя добиться идеала, я зашёл в Террарию. И там я увидел что погрешностей там нет. Ну вообще нету. Вот мне и интересно, может я что-то не так делаю. Так что, если не сложно, напишите как кто делал прыжки в платформерах.
|
Ответ: Vivo
Погрешность чего?
|
Ответ: Vivo
Есть расстояние между игроком и блоком под ним. Иногда он немного выше, иногда - в сам блок влазит. Дело косметическое, понимаю, но мелочь довольно не приятная. И вообще, как делаются правильно прыжки? Вот мой черновой вариант:
Код:
dx=KeyDown(KEY_D)-KeyDown(KEY_A) |
Ответ: Vivo
При завершении прыжка корректируй позицию игрока так, чтобы между блоком и игроком не было зазора. Просто проверяй на сколько подвинуть и двигай, т.к. координаты и размеры известны, то это легко получится.
|
Ответ: Vivo
Что-то всё равно не очень гладко выходит. Есть у кого исходники платформеров на максе ил блитц3д? Буду благодарен. Или пожалуйста, просто киньте сюда код отвечающий за передвижение и прыжки.
|
Ответ: Vivo
Вот этот проект посмотри: http://forum.boolean.name/showthread.php?t=5751
|
Ответ: Vivo
Спасибо. Кстати, можно ли как-то сделать Include "abc.txt"? Мне очень понравилась система в Stranded 2. Там вообще можно новую игру в .txt написать.
|
Ответ: Vivo
Цитата:
То, что Include это не директива - странно, но этому есть применение. Include может возвращать результат, Include можно вызывать по условию и тд. По сути весь твой код внутри Include оборачивается как бы в функцию (на самом деле GOTO) и его можно вызывать сколь угодно раз, однако не советую так делать. Для этого есть функции/методы. А при компиляции все твои Include компилируются в exe вместе с главным файлом вне зависимости от того как ты эти include используешь. То, что ты хочешь сделать именуется скриптовым языком. В Stranded используется LUA. В BlitzMax уже есть модуль работы с LUA и даже несколько сторонних модулей упрощающих работу с ним. Немного на русском http://blitzetc.blitzmax.ru/index.php/BlitzMax_и_LUA Wiki по встроенному в BlitzMax модулю LUA http://en.wikibooks.org/wiki/BlitzMa...Other/Lua_Core AXE LUA модуль http://en.wikibooks.org/wiki/BlitzMax/Modules/Axe/Lua http://lua-users.org/wiki/BlitzMax Мануал по синтаксису LUA (можно особо не зачитываться так как луа простейший) http://www.lua.org/manual/5.1/ |
Ответ: Vivo
Блин, что-то вконец ничего не получается. С осью y разобрался, а вот с x вообще лажа:( Помогите найти ошибку, пожалуйста. Проблема в том, что игрок всё равно может проникнуть через блок. Хотя я думаю что у меня подход неверный, коллизии в тайловой игре как-то не очень. З.Ы. код jimon'a посмотреть не смог, файл удалили. |
Часовой пояс GMT +4, время: 08:33. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot