Просмотр полной версии : Interference:построение таблицы
goblinish
16.11.2012, 13:30
Эффект очень известный, но вот такие данные(на рис.) загнали в тупик.
Есть какие-то мысли?
goblinish
16.11.2012, 18:05
goblinish, а чо это?
ну это эффект, который называется interference.
а его вариация тут:
http://zeroteam.sk/demos.html
демка-Sweet Wedding (http://zeroteam.sk/files/SweetWedding.zip)
Делал нечто похожее, но получилась интересная разновидность..
Самое грустное, что в части демы кусок памяти забит...
в архиве кусок как есть, короче..
goblinish
16.11.2012, 18:15
да вроде все просто синус расстояния до центра с -1 черным и +1 белым.
тогда формула какая, раз просто?
goblinish
16.11.2012, 18:38
похоже вроде бы.. хотя это немного усложняет.
goblinish
17.11.2012, 12:24
А че усложняет? Такое в реалтайме можно считать, атрибутное по крайней мере. 2 таблички - квадраты и проекция квадратов расстояния на цвет. Вот пересчет второй, да придется чутка по оптимизировать, но с первого взгляда тоже ничего опасного.
все равно, придется вычисление синуса использовать, что долго.
goblinish
17.11.2012, 13:43
смотри
допустим дельты от центра не превышают по модулю #40 тогда макс расстояние #5B(#40/sin(pi/4) или sqr(#40^2+#40^2)).
вот табличку в #5B длинной и надо посчитать.
Готовим заранее табличку color(r) c шагом pi/#100 длинной соответственно #100 и шагаем по ней неким коэффициентом задающим разряженность (в формуле коэффициент a1) для примера возьмем #20 соответственно у нас получится 8 значений ( лучше начинать с a1/2 то есть #10) ими заполняем нашу #5B сначала в прямом порядке потом в зеркальном.
color (r) заполняется типо так mem(i)=(sin(i/#100*pi+pi/2)+1)*3.5+0.2 где i от 0 до #ff. если 0.2 уменьшить будет больше черного увеличить больше белого.
Детали интересные, просто я думал в интро 256 байт уместить.
синус там пригоден для перемещения блоков памяти. так что, может влезть.Самое интересное, это процедура вычисления синуса без калькулятора, она гораздо быстрее.
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot