Форум: "Игры";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
ВнизЗагруз в PowerDraw Найти похожие ветки
← →
Domowoi (2004-12-08 23:55) [0]Мля... Ну и лажа... Я разочарован PowerDraw... Да по скорости я конечно не спорю: DelphiX и в подметки не гоlится PowerDraw. Да но по сложности он намного тяжелее чем DelphiX( а все кричали не тяжелее!!!, не тяжелее!!!!) Если DelphiX я понял за пару часов (алгоритм), то в PowerDraw я нифига НЕ ПОНЯЛ !!! :(
P.S. Уже е**усь с ним 5!!! день и так и ничего не понял...
Люди киньте плиз или линки на исходники или на какие-нибудь доки на что нидбудь. Только киньте плиз!!!
← →
Darthman © (2004-12-09 09:10) [1]1) исходники идут в комплекте. Не один пример, кстати. РАзобраться по ним можно. Доки тоже в комплекте.
качайте и радуйтесь.
← →
dRake (2004-12-09 12:27) [2]Мля ну напиши что непонятного!
Я с первого раза просек, как посмотрел на примеры.
Глянь пример, где просто выводится надпись PowerDraw - там все что надо есть. Или напиши на форум что не понял - все те растолкую....
← →
TButton © (2004-12-09 17:24) [3]re [2]
во. спрашиваю.
в дельфи-х.... был имадж лист, который позволял хранить анимированые спрайты и выводить нужный кадр анимации. в поваре дров с этим, как я понял, напряг. или я неправильно понял?
← →
Darthman © (2004-12-09 17:55) [4]VTDB вместо имаджлиста можешь использовать
Анимированные спрайты тоже не беда. При загрузке указываешь размер паттерна, а при отрисовке номер паттерна.
← →
dRake (2004-12-09 18:11) [5]2 TButton
Неправильно понял ;)
В PD есть такая замечательная штука как паттерны.
Когда ты грузишь текстуру, там есть параметры PtWidth, PtHeight, TexWidth и TexHeight. Объясню нафига они нужны.
TexWidth, TexHeight - это размеры текстуры, в коророй будет храниться твоя картинка. Эти размеры обязательно должны быть степенями двойки (32, 64, 128...). Тоесть если твоя картинка например 425х234 то ее придется запихнуть в текстуру 512х256.
PatWidth, PatHeight - это размеры паттернов, тоесть кусков на которые будет резаться твоя картинка. Их размеры могут быть любыми (ну естесс-но не болше размера текстуры ;)
Вот для той картинки 425х234 в качестве размеров паттерна нужно бует указать именно ее реальные размеры - 425х234. Тоесть получится что твоя неформатная картинка будет лежать в правильной, но большей по размеру текстуре, а при отрисовке будет рисоваться только кусок, ограниченный PatWidth и PatHeight, тоесть то что нужно ;)
А теперь анимация.
Грузим нашу текстуру (256х64), в качестве TexWidth и TexHeight указываем 256 и 64 (все ок - размеры - степени двойки).
А вот в качестве PatWidth и PatHeight - укажем 64 и 64 (ведь кадр анимации - именно 64х64). Получится что текстура разобьется на 4 куска(паттерна) 64х64.
Теперь при выводе графики (у каждой функции отрисовки есть параметр Pat - это номер (начиная с 0) того паттерна, который необходимо отрисовать) будем указывать нужный нам параметр Pat, и будет отрисовываться нужный нам кадр анимации. Паттены индексируются слева направо, потом сверху вниз, тоесть как пиксели в картинке ;) Тоесть получается что все равно как расположить в картинке 16 кадров анимации - все 16 в ряд, или в 4 ряда по 4 кадра.
Вот и все =)
← →
TButton © (2004-12-09 20:09) [6]ну в принципе про паттерны я знал, просто не знал как это в поваре организовано.
а за хелп, естественно спасибо.
← →
dRake (2004-12-09 21:07) [7]Так вроде еще как-то можно их задавать вручную.... Но я туда не копал, за ненадобностью ;) Пожалста :)
← →
Красный молоток (2004-12-09 21:19) [8]TTexCoord рулит =)
Например, очень удобно хранить много маленьких картинок в одной большой текстуре. И при выводе просто указывать их текстурные координаты.
← →
Красный молоток (2004-12-09 21:20) [9]TTexCoord рулит =)
Например, очень удобно хранить много маленьких картинок в одной большой текстуре. И при выводе просто указывать их текстурные координаты.
← →
TButton © (2004-12-09 22:38) [10]
> TTexCoord
was est das?
← →
TButton © (2004-12-10 00:41) [11]еще вопрос.
вывод текста.
TPowerFont.Font1.LoadFromFile("../../Fonts/TimesRoman.fnt", D3DFMT_A1R5G5B5);
первый параметр - имя файла
второй - TD3DFormat
а я в этих форматах нуль.
смотрел сырцы, ничего внятного на этот счет не нашел.
← →
Darth (2004-12-10 01:54) [12]A1 - один бит на альфа канал
R5G5B5 соответственно красный синий и зеленый по 5 бит. Тоесть 16бит текстурка. Все просто.
← →
TButton © (2004-12-10 03:08) [13]ага...
а утилита FontRender стало быть в этом самом формате и рендерит. да? лллладно пока.
← →
MeF Dei Corvi © (2004-12-10 09:54) [14]
> Например, очень удобно хранить много маленьких картинок
> в одной большой текстуре
При условии, что текстура не слишком большая. Чем больше текстура - тем больше тормозов. Иногда бывает лучше большое изображение разделить на несколько маленьких и выводить их поотдельности.
← →
Ландграф Павел © (2004-12-10 09:54) [15]гы-гы... ацтой потому что "я ничего не понял", ну ты крут Domowoi, сиди с delphix, он же классный!=))
← →
dRake (2004-12-10 13:32) [16]2 TButton
Да забей ты на этот PowerFont
Шрифты отстойные получаются....
Лучше напиши свою рендерилку шрифтов.
← →
Красный молоток (2004-12-10 17:30) [17]Я вот сделал свой шрифт и рад =)
Делал из-за того, что в TPowerFont нельзя динамически сделать шрифт
← →
Красный молоток (2004-12-10 17:33) [18]Кроме PowerDraw рекомендую посмотреть DL-FX Дарза, в скором времени он станет гораздо круче чем PowerDraw, если Дарз его конечно не забросит =)
← →
Darthman © (2004-12-10 18:45) [19]Не брошу, будь уверен ;)
Вот на выходных фонтрендер доделаю :D
← →
Domowoi (2004-12-10 21:16) [20]Крута! Втихаря разоьрался с алгоритмом!:) А как выводить рисунок с transparent color"om например белым? И здесь различные объекты допустим tplayer"ы создаются с помощью delphix? да?
← →
dRake © (2004-12-10 23:38) [21]С прозрачным цветом :
Image.LoadFromFileAlpha1Bit(D3DDevice, Path, pW, pH, tW, tH, Color);
Вот в качестве Color и пишешь свой прозрачный цвет
А при отрисовке в качестве эффекта используй effectSrcAlpha
← →
Domowoi (2004-12-11 01:38) [22]Ну хорошо это я понял, а как быть с различными объектами допустим tplayer,tenemy как это в powerdraw осуществляется как? А, еще как здесь сделать карту или что-то другое? Так же как и в delphiX?
← →
TButton © (2004-12-11 06:06) [23]
> Ну хорошо это я понял, а как быть с различными объектами
> допустим tplayer,tenemy как это в powerdraw осуществляется
> как? А, еще как здесь сделать карту или что-то другое? Так
> же как и в delphiX?
ручками, уважаемый, ручками.
напрасно вы подсели на этот придурошный TDXSpriteEngine
← →
Domowoi (2004-12-11 12:07) [24]т.е. как ручками? вообще как это создается?
← →
dRake © (2004-12-11 16:33) [25]>т.е. как ручками? вообще как это создается?
Ну блин это база. Копай в инете. PD - это только отрисовка графики. Всю архитектуру нужно делать самому.
← →
TButton © (2004-12-11 19:01) [26]а вы по копайтесь в сырцах ого самого SpriteEngine
по читайте как устроен TSprite
про анализируйте
создайте свой клас
← →
Красный молоток (2004-12-11 20:14) [27]С содроганием вспоминаю TSpriteEngine
← →
Domowoi (2004-12-11 20:44) [28]То есть не нужно там какие-либо компоненты кидать на форму, а нужно просто все абсолютно кодить? Я правильно понял?
← →
dRake © (2004-12-12 00:15) [29]>То есть не нужно там какие-либо компоненты кидать на форму, а >нужно просто все абсолютно кодить? Я правильно понял?
Совершенно верно, ибо это и весть единственно правильный путь.
← →
TButton © (2004-12-12 02:14) [30]
> То есть не нужно там какие-либо компоненты кидать на форму,
> а нужно просто все абсолютно кодить? Я правильно понял?
он прозрел!
ему открылась истина!
виват Домовой!
← →
Domowoi (2004-12-13 13:21) [31]А где можно подробнее узнать про это создание ручками?
← →
Красный молоток (2004-12-13 14:52) [32]Про то, что должен содержать игровой движок, можно взять из DelphiX, но затачивать под определенную игру.
← →
Красный молоток (2004-12-13 14:52) [33]То, что должен содержать игровой движок, можно взять из DelphiX, но затачивать под определенную игру.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.036 c