![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#821 | |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
![]() Цитата:
Думаю при Заполнении, но это простая догадка. Асм я вообще пока не понимаю. Код:
|
|
![]() |
![]() |
![]() |
#822 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
ZBEP, это сама процедура, работает корректно, если отправленные данные в нее также корректны. Вот сам вызов:
Код:
Код:
В любом месте кода, слева можно поставить точку останова (красный кружок и вся строка подсветится красным), далее F9 и программа остановится в выбранной точке, на этой строке, затем далее нажимая F8 будет переход на следующую строку, так в ручном режиме можно отыскать проблемное место. Отметь вот тут: Код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#823 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
![]()
Блин, все, я забыл, что PChar надо на PAnsiChar заменять на новых делфях.
Спасибо! П.с. Ток чет прозрачности нету, ща буду искать в чем дело. |
![]() |
![]() |
![]() |
#824 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Прозрачность связана с библиотекой PNGImage, возможно не та версия или еще что-то, вот весь набор, что есть у меня (во вложении).
Быть может и эта переменная не поддерживается: PointAlpha: PByteArray; ?
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 26.11.2010 в 17:56. |
![]() |
![]() |
![]() |
#825 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
![]()
Спс, сейчас проверю.
Не может найти файл adler32.obj У себя тоже искал - не нашел. П.с. Этих файлов также нет Код:
|
![]() |
![]() |
![]() |
#826 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Перезалил архив, в нем полностью все.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#827 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
![]()
Блин, под XE не хочет его компилировать
![]() Странно, то что со стандартным pngimage не хочет с прозрачностью работать. В другом проекте все норм |
![]() |
![]() |
![]() |
#828 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Тогда попробуй заменить секцию создания и загрузки PNG в динамический массив. Вот как это происходит сейчас. Это обязательное условие, чтобы можно было обращаться напрямую к памяти по указателю:
Код:
Код:
Код:
Код:
Код:
Код:
B = {синий} * {альфа-канал} / 256 G = {зеленый} * {альфа-канал} / 256 R = {красный} * {альфа-канал} / 256 A = 255 - {альфа-канал} В смешивании остается только это, без отрицательных чисел (на примере красной компоненты): Buf = Tex + (Buf * Alp) shr 8 Особенности формулы в том, что если в текстуре истинно черный цвет RGB(0,0,0), то она выполнит альфа-канал как ключ прозрачности, т.е. грубо сделает полностью прозрачным весь черный цвет. Чтобы этого не происходило, ни одна из компонент не должна быть меньше 2-х, ...я беру 4, так легче запомнить. Сомневаюсь, что кто-то на глаз сможет отличить два рядом стоящих квадрата с цветом RGB(0,0,0) и RGB(4,4,4), ...поэтому, нужно либо рисовать текстуры с заранее выставленными компонентами не ниже 4-х, либо в программе выполнить проверку и замену при загрузки изображения, ...либо оставить как есть, если этот эффект нужен, ...просто создавать правильные текстуры. Вот, собственно, и все. Дальнейшее увеличение скорости - переход на SSE-регистры.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#829 |
Форумчанин
Регистрация: 23.03.2009
Сообщений: 334
|
![]()
Немного отойдя от темы, сейчас параллельно "изучаю" в общих чертах DirectX и наткнулся на Mini 2D engine, хоть "функций" пока и маловато, но давольно таки удобная вещь.
Добавил пару процедур для более удобного управления (можно было бы конечно в самом проекте их расписать, но так для меня удобнее было), производительность хорошая вроде, дальше видно будет. П.с. Beermonza Ок, завтра не дома буду, послезавтра тоже врятли получится, в понедельник сяду дальше разбираться. Последний раз редактировалось ZBEP; 27.11.2010 в 03:30. |
![]() |
![]() |
![]() |
#830 |
Пользователь
Регистрация: 12.02.2009
Сообщений: 12
|
![]()
Привет всем) Посмотрел тему, смотрю уже далеко ушли, тоже решил попробывать себя в создании игр, в делфи опыт есть небольшой, можете подсказать с чего начать?
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Уроки по созданию игр для новичков... | -=DeS=- | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 750 | 14.11.2017 20:26 |
Музыка программистов - как вы относитесь к АРИИ? | Весёлый Жека | Свободное общение | 46 | 10.10.2008 22:32 |
Конкурсы по созданию игр на Delphi | mutabor | Свободное общение | 0 | 15.06.2007 12:40 |
Работа по созданию ПО | remix | Фриланс | 3 | 22.04.2007 11:00 |