Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 | 3 | 4 |

 

  Вопрос: >> Alpha-Blending << Добавлено: 19.11.05 00:00  

Автор вопроса:  AgentFire | ICQ: 192496851 

Ответить

  Ответы Всего ответов: 47  

Номер ответа: 16
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #16 Добавлено: 22.11.05 19:10
Кстати, вот что я пишу:
[http://www.NoviksPlavnik.narod.ru/CrazyTanks.rar]

Ответить

Номер ответа: 17
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #17 Добавлено: 22.11.05 21:33
gy-y-y-y...OGL ved` tozhe 3D...tol`ko 3D....a DLL'ka est` po ssylke chto ya prislal...esli vseravno ne nashel, prishlyu kogda domoj pridu....a vashe 2D igry shas v 3D pishut->bystree ves` rendering idet v principe.

Ответить

Номер ответа: 18
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #18 Добавлено: 22.11.05 22:44
я в 3D полный нуль ;(
Если кому-нибудь меня жалко, отправьте, плз, примерчик с комментами...

Ответить

Номер ответа: 19
Автор ответа:
 Страшный Сон



Вопросов: 46
Ответов: 848
 Профиль | | #19 Добавлено: 24.11.05 16:36
http://www.NoviksPlavnik.narod.ru/CrazyTanks.rar

А хрен. Накрылся сайт у тебя.

Ответить

Номер ответа: 20
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #20 Добавлено: 24.11.05 22:31
ugu, cheto tam ne tak. skachal, govorit arhiv povrezhden.

a nashed DLL'ki, ty nashel? ili poslat`?

Ответить

Номер ответа: 21
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #21
Добавлено: 25.11.05 00:22
Как насчет того, чтобы откодить все ручками, раз на то пощло?
Или использовать Image, в которые совать bmp-шки с альфа-каналом (32-битные). Я, правда, не уверен, что Image такое поймет, но думаю что да.

Ответить

Номер ответа: 22
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #22 Добавлено: 25.11.05 07:34
Image to pojmet takei kartinkie (BMP takin netu voobsheto...). vot tol`ko zachem cheloveku Image esli on v DX'e kodit?

Ответить

Номер ответа: 23
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #23 Добавлено: 25.11.05 07:35
a ruchkami nakodit` esli, to budet TAAAAAAAK medlenno, chto voobshe luchshe obojtis` bez alpha-blending'a...imho vbdabl yuzaj da i vse...nu ili izuchaj 3D teoriyu i delaj v 3D, kak ugodnee.

Ответить

Номер ответа: 24
Автор ответа:
 Страшный Сон



Вопросов: 46
Ответов: 848
 Профиль | | #24 Добавлено: 25.11.05 18:54
Да я могу довольно быстрый альфа-блендинг сделать. Если 256 цветов - то таблица, если полноцветное - то примерно так:


[  C As Byte, V1 As Byte, V2 As Byte, Alpha As Long  ]
C = V1 + CByte((CLng(V2) - CLng(V1)) * Alpha \ 256)


А если Alpha=128, то вообще фигня, можно и без преобразований обойтись:


C = V1 \ 2 + V2 \ 2


Главное в графике - не делать вещественную арифметику.

Ответить

Номер ответа: 25
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #25 Добавлено: 25.11.05 19:10
nda, sdelat` to ty sdelaesh, no teper` predstav` cheloveku nado risovat` kartinku razmerom 100x100 pixelej, i gdeto 20-30 i bol`she raz v sekundu...imho torpoza budut uzhasnye.

Ответить

Номер ответа: 26
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #26 Добавлено: 25.11.05 19:10
nda, sdelat` to ty sdelaesh, no teper` predstav` cheloveku nado risovat` kartinku razmerom 100x100 pixelej, i gdeto 20-30 i bol`she raz v sekundu...imho tormoza budut uzhasnye.

Ответить

Номер ответа: 27
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #27
Добавлено: 25.11.05 19:37
imho tormoza budut uzhasnye.
Имхо, если хорошо написать (не используя по крайней мере GetPixel/SetPixel), не будут ужасные.
Мало того, эти картинки, как я понял из другого топика, еще и поворачивать надо на лету. Ой возни-то...
С процедурой альфа-блендинга могу кодом поделиться. Я попробовал его на рисунке 100х100 и не заметил абсолютно никаких тормозов. FPS правда не считал.
Надо еще заметить, что там не самый оптимальный способ вывода этой картинки на экран.

Ответить

Номер ответа: 28
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #28
Добавлено: 25.11.05 19:42
        For Y = y1 To y2
            OfcYSel = Y * SelW
            yd = y0 + Y
            For X = x1 To x2
                xd = x0 + X
                SelOutputRGB(OfcYSel + X).rgbRed = ((CLng(DataRGB(xd, yd).rgbRed) - SelDataRGB(OfcYSel + X).rgbRed) * TransDataRGB(OfcYSel + X).rgbRed) \ 255& + SelDataRGB(OfcYSel + X).rgbRed
                SelOutputRGB(OfcYSel + X).rgbGreen = ((CLng(DataRGB(xd, yd).rgbGreen) - SelDataRGB(OfcYSel + X).rgbGreen) * TransDataRGB(OfcYSel + X).rgbGreen) \ 255& + SelDataRGB(OfcYSel + X).rgbGreen
                SelOutputRGB(OfcYSel + X).rgbBlue = ((CLng(DataRGB(xd, yd).rgbBlue) - SelDataRGB(OfcYSel + X).rgbBlue) * TransDataRGB(OfcYSel + X).rgbBlue) \ 255& + SelDataRGB(OfcYSel + X).rgbBlue
            Next X
        Next Y

Вот. Самое интересное место. Только вырезано из контекста. Но, я думаю, суть ясна. Тестил ессесно на откомпилированной проге.

Ответить

Номер ответа: 29
Автор ответа:
 Страшный Сон



Вопросов: 46
Ответов: 848
 Профиль | | #29 Добавлено: 25.11.05 22:47
Ну собственно, это те же самые яйца, которые запостил я, только с RGBQUAD'ом или как там его...

Ответить

Номер ответа: 30
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #30 Добавлено: 27.11.05 13:26
a nashed DLL'ki, ty nashel? ili poslat`?
Присылай... [NoviksPlavnik@mail.ru]
i gdeto 20-30 i bol`she raz v sekundu...imho torpoza budut uzhasnye.
мне нужно ровно 75 раз в секунду... это ведь DirectX !!

Ответить

Страница: 1 | 2 | 3 | 4 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам