![]() |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
именно так, на столько сколько нехватает до требуемой точки на экране.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Есть вопрос, как узнать сколько мне нехватает до этой точки? =)
Если известна только координата этой точки XY |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
ну смотри, если ты картинку желаешь рисовать в 200, 300
то до начала координат тебе получается -200, -300 так? Это уже вращение вокруг начала координат получается. Значит точка_назначения(x,y) - точка_нахождения_картинки(x,y) = смещение_handle_картинки(x,y) т.е. из координат требуемой точки вращения вычитаем координаты положения видимой части картинки, т.е. если бы у неё был неизмененный хэндл. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Хммм, а изначально для той картинки которую хочу вращать вокруг точки которой нет на картинке, Handle куда устанавливать то? =)
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Никуда, он и так изначально в 0,0
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
А если мне помимо поворота вокруг произвольной точки, нужно еще и по своей оси потом повернуть?
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Тога придётся напрячь штуки из вашей подписи.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Прокатит? =) |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Нет не прокатит.
Ты путаешь две вещи, вращение картинки, и перемещение картинки по кругу относительно какой либо точки. Первое делается с помощью команд вращения картинки и если надо изменения хэндла картинки. Второе обыкновенная математика и капля тригонометрии. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Короче. То на то и выходит
Сначала вычисляем новые X,Y, обновляем месторасположение объекта с помощью функции которую я нашёл на оф форуме. Потом только устанавливаем хендл, прокручиваем по своей оси, и уже получаем угол самого объекта, при неизменных координатах |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Код:
... |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Без ToCString нормально идёт,
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
На BlitzEtCetera все написано правильно.
Просто если ты передаешь литерал ( в виде "аля_что_то" ) то компилятор передаст прямой указатель, тоесть Сишную-строку. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Я тут в примере наткнулся на строчку кода и хочу узнать для чего так сделано? :)
Код:
Field NewConnectionCallback (Conn:TCPSocketConnection) |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Я посмотрел код примера, эти штуки являются callback'ами, в эти поля присваиваются имена функций, которые будут далее использоваться.
Крутая штука, я не знал что так можно. Вот весь код: |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
У кого есть откомпиленный модуль bah.cairo, плз, скиньте.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Компилятор споткнулся, так как в коде идет вызов\обращение к несуществующей метке.
Судя по названию "PIXMAN_OP_" - автор опечатался, попробуй заменить на "PIXMAP_OP_" |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Maximus- the BlitzMax module manager
Скачивает, распаковывает, устанавливает с учётом зависимостей модули для BlitzMax. Всё что надо - иметь MinGW. Остальное эта прога сделает сама. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Как вращать картинку вокруг центра объекта со смещением по x/y?
(для раскуривания: есть объект, сбоку (по "-x") у него двигатель и надо прицепить туда партиклы.) Через Sin и Cos получается крутить только по кругу. :( |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
![]() Я тут поразмышлял немного, и выходит, что "двигатели" двигаются по своей окружности, центр которой в это время в свою очередь двигается по окружности :-) с разницей в 90 градусов от "главного" угла. Радиус меньшей окружности равен сдвигу по х двигателей относительно центра "корабля". |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Не совсем понятен вопрос... а как тебе еще двигать если не по кругу ?
Вектора спасут оца русской демократии |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Надо прицепить партиклы к двигателю корабля. Двигатели находятся по бокам то есть просто по кругу не прокатит, надо как то еще и смещение по x/y высчитывать, но не выходит. Хотя один человек с ГД.ру подсказал мне решение, но там как то много строк вышло хотя мне казалось что там все просто будет. :( |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Это не "И", это решение.
Твой вопрос непонятен. Два варианта: 1) Корабль летает по кругу. Я нарисовал этот случай. Вроде: PHP код:
Тогда все вообще элементарно. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Так в чем вопрос то ?
Не можешь сдвинуть обьект вокруг другого ? Кури тему про локальные системы координат обьекта, вектора и про систему родитель\ребенок. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
У меня вопрос:
Когда поворачиваешь объект только по горизонтали или по вертикали, всё норм. Но когда повернёшь объект только по горизонтали и лишь потом по вертикали (ну или наоборот), второй поворот будет происходить немного в другую сторону от ожидаемого, ведь ось чуток сместилась. Как сделать так, чтобы объект поворачивался в нужную сторону вне зависимости от того, куда он уже повёрнут? |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
в 2D-графике нет поворотов по горизонтали\вертикали. здесь только одна ось.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Nex, вроде как FireOwl и Diablo1909 норм написали. Я своими словами допишу. У тебя есть корабль, у корабля есть центр, относительно которого он вращается при повороте. Тебе нужно определить dx dy смещения от центра вращения корабля до двигателей в неповёрнутом положении корабля. Зная их, сможешь найти угол наклона гипотенузы, эта гипотенуза и есть радиус вращения, её тоже найдёшь через дх ду. Получишь набор начальных углов и радиусов - от центра вращения корабля до двигателей. Далее при вращении корабля на такой же угол изменяешь значения начальных углов двигателей. Через углы и радиусы находишь смещения дх и ду - это локальные координаты двигателей относительно центра корабля. Потом при отрисовке прибавляешь к ним координаты центра корабля и получаешь глобальные обычные координаты рисования. :)
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Для погони за мышкой нужно просто вращать корабль на небольшой угол до тех пор, пока он носом не будет смотреть в направлении мышки, и одновременно двигать его вперёд, чтобы разворот был по дуге, а не на месте.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Вложений: 1
Как убрать у окна обводку и кнопки? И можно ли как нибудь добавить иконку в трей?
Как то вот так хочу сделать: Вложение 17191 |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Неужели никто не знает?
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Это вопрос по БМаксу или по WinGUI?
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Не знаю. Я еще не разобрался. Думал сами поймете и скажете куда смотреть..
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
1) Припашем виндовые WinApi ф-ции
PHP код:
hWnd - хендл окна Skin - пиксельная карта PHP код:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
почему когда я компилирую проект второй раз в консоли пишется:
Код:
G:/BlitzMax/bin/ld.exe: cannot open output file F:/Dropbox/Magnavem/BlitzMax/1.2_pixelmap/New file.exe: Permission denied Если удалять ехешник, то он снова появляется. Иногда пишет, что заблокировано процессом "System". Жду около минуты и снова могу компилировать нормально. Что делать пасаны? |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Вопрос снят , решил (DrawPixmap все таки нашел)
Подскажите плиз, как вывести Pixmap я не нашел команды DrawPixmap и в гугле искал, есть на опенгл, а как вывести на директе? Знаю, что можно сделать через картинку или спрайт, можете подсказать, как точно это сделать, примерчик привести. Код должен выводить часть "карты"(двумерный массив) на экран в виде пикселей, окрашенных в цвет (ну в данном примере они меняют оттенок от белого цвета к черному) |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Как установить miniB3D в BlitzMax?
Пробовал папки с окончанием ".mod" перекидывать в "\BlitzMax\mod", но ниче не работает. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Что лучше использовать в мморпг для хранении информации об игроках(положение, инвентарь и т.д.): субд или текстовые файлы? Хочу услышать аргументы. Я лично больше склоняюсь к т. файлам, ибо сортировка и расширенный поиск в мморпг вроде не требуется(или я не прав?), все просто: каждый файл - каждый игрок, а название-ник.
Если всё же субд лучше, то какую лучше использовать и как работать с ней на blitzmax+raknet? P.S. мморпг я вряд ли создам, но скорее всего получу опыт в создании подобных вещах |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Ты наверное забыл скомпилить модуль после того как добавил его. Вот из ReadMe.txt кусок: Я делал вариант "To use MiniB3D as a module". |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
И при перемещении папок возникают ошибки сначала на c++ файлы. Если их удалить, то появляется еще больше ошибок. По сравнению с Блитзом как то муторно подключать что-либо. :( |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Про компилятор:
Цитата:
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
С БД меньше проблем. Быстрее скорость нахождения при большом количестве записей. Структурное хранение.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
С blitz3d перешел на blitzmax
Это будет смешно, но я не нашел функции ввода текста |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Вот пример: http://www.blitzbasic.com/codearcs/c....php?code=1428 Хоть и не очень удачный |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Ах да и еще. написал
Код:
AppTitle = "ZXCV" |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Кстати тоже странно, что Марк (автор) не сделал этот момент нормально |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Код:
DrawText Спасибо заранее |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Можно, я делал выделение с помощью тегов, самый простой способ из того что я с лёту придумал.
Посмотри вот этот мой проект http://forum.boolean.name/showthread.php?t=11367, там на второй странице есть ссылка на исходники, может пригодится тебе. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
В стандартном Max IDE это есть ведь. Есть хороший редактор кода для макса - BLIde.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Я вывожу текст на экран через функцию Код:
DrawText |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
TextBox или TextArea человеку нужно.
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
Спасибо. Нашел в интернете. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Что стало с blitzetc.blitmax.ru? У blitzmax статей стало в 2 раза меньше, и они наполовину спилины какой-то рекламой вроде на немецком
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Okay, ну наконец-то я понял тебя.
Что ты там такое делаешь? Может тебе лучше пересесть на другой инструмент разработки. |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Цитата:
|
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Как получить нормаль столкновения картинки шарика с картинкой прямоугольника? :)
з.ы. в блитзе че то как то все просто было CollisionNX/Y/Z :( |
Ответ: Вопрос-Ответ (для новичков BlitzMax)
Возьми 2д-физ двиг ( Box2d тебе в руки ), опиши формы круга ( а не шарика ) и прямоугольника и столкни друг с другом, после чего сгенерится вся инфа о точках столкновения.
|
Часовой пояс GMT +4, время: 13:44. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot