Компьютерная свеча

Работа с 2D и 3D графикой, видео, звуком.

Модератор: Mikle

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Компьютерная свеча

Сообщение DKbelRoma » 25.11.2007 (Вс) 21:41

Начал изучать 3D на VB и захотелось зделать огонь... Потом пришла идея зделать свечку...

Выскажите своё мнение насчёт огня... Попрошу меня необижать :cry:
У вас нет доступа для просмотра вложений в этом сообщении.
«Не важно, откуда ты. Важно - где ты.»

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 25.11.2007 (Вс) 21:43

Кому интересен код огня выкладываю...
Код: Выделить всё
Option Explicit
Private Const x As Long = 25
Private Const y As Long = 60
Dim disp1(x, y) As Long
Dim disp2(x, y) As Long
Dim fon(x, y) As Long
Private Declare Function SetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
Dim l As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Private Sub Form_Activate()
Do
Timer
DoEvents
Loop
End Sub
Private Sub Timer()
PSet (0, 0), 0
Dim i As Integer
Dim o As Integer
Dim R1 As Integer
Dim G1 As Integer
Dim B1 As Integer
For i = 1 To 2
disp1(Rnd * x / 2 + x / 4, 1) = Rnd * 20000
Next
For i = 1 To x - 1
For o = 1 To y - 2
l = (disp1(i - 1, o - 1) + disp1(i, o - 1) + disp1(i + 1, o - 1) + disp1(i - 1, o) _
+ disp1(i + 1, o) + disp1(i - 1, o + 1) + disp1(i, o + 1) + disp1(i + 1, o + 1) + disp1(i, o)) / 9.5
LongToColor l, R1, G1, B1
Call SetPixel(Form1.hdc, i + 123, y - o + 32, RGB(R1, G1, B1))
disp2(i, o + 1) = l
Next
Next
CopyMemory disp1(0, 0), disp2(0, 0), (x + 1) * (y + 1) * Len(disp2(0, 0))
End Sub
Private Sub LongToColor(Index As Long, R As Integer, G As Integer, B As Integer)
R = -((Index > 255) * 255 + (Index >= 0 And Index <= 255) * (Index Mod 256))
G = -((Index > 511) * 255 + (Index >= 256 And Index <= 511) * (Index Mod 256))
B = -((Index > 767) * 255 + (Index >= 512 And Index <= 767) * (Index Mod 256))
End Sub


Код просто вставляется на пустую форму
------------------------------------------------------------------------------------
Извиняюсь , но исходник вылаживать небуду....Стыдно :oops: Когда я это делал то плохо был знаком с VB , код просто ужасный и оформление неахти...
«Не важно, откуда ты. Важно - где ты.»

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 26.11.2007 (Пн) 0:22

Размещенный код сам писал? :)
Salus populi suprema lex

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 26.11.2007 (Пн) 11:16

dr.MIG - нет, нашол на другом форуме и чуть чуть доделал ! А что?
«Не важно, откуда ты. Важно - где ты.»

Anubis
Обычный пользователь
Обычный пользователь
 
Сообщения: 53
Зарегистрирован: 02.11.2007 (Пт) 10:18

Сообщение Anubis » 26.11.2007 (Пн) 14:23

Это чуть чуть я так понял изменение имён переменных )))))))))
А разрешения, на распростронение кода тебе дали? Ты явно нарушаешь авторские права!
Мы родились на этот свет, и ни кто не в праве его выключать!

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 26.11.2007 (Пн) 20:57

код был на форуме http://forum.codeby.net вроде...
А почему это я нарушаю авторские права???? :oops:
«Не важно, откуда ты. Важно - где ты.»

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 02.12.2007 (Вс) 12:35

Хакер ,а моя "Свечка" не тянет в раздел "Кирпичи" или "Наши проэкты" ???
«Не важно, откуда ты. Важно - где ты.»

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 02.12.2007 (Вс) 15:58

На кирпич точно не тянет. За безполезностью и не обособлённостью
Изображение

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 03.12.2007 (Пн) 20:41

keks-n - а почему обособлённость? Помоему симпотишный дизайн , да и пламя красивое. Может кто то кода незнал , вот и узнают. Ну насчёт безполезности увы согласен. :cry: Просто хотел первый раз зделать что то на 3D.
«Не важно, откуда ты. Важно - где ты.»

Ktulhu
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 132
Зарегистрирован: 14.07.2007 (Сб) 14:03
Откуда: Киев, Р'льех

Сообщение Ktulhu » 03.12.2007 (Пн) 21:21

DKbelRoma, нисмиши

Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

Сообщение Watts[]n! » 04.12.2007 (Вт) 0:37

DKbelRoma
Да причем здесь вообще 3D?

DKbelRoma
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 282
Зарегистрирован: 13.09.2007 (Чт) 23:32
Откуда: Из Кривого Рога

Сообщение DKbelRoma » 04.12.2007 (Вт) 20:59

А что это не 3D??? :roll: Странно :o тогда что?
«Не важно, откуда ты. Важно - где ты.»

Ktulhu
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 132
Зарегистрирован: 14.07.2007 (Сб) 14:03
Откуда: Киев, Р'льех

Сообщение Ktulhu » 04.12.2007 (Вт) 21:19

2D
при чем простым рисованием пикселей на форме средствами VB


Вернуться в Мультимедиа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 60

    TopList