Render.ru

ShaderMan comments

#1
Всем привет, сорри за отсутствие комментариев за последние 2 дня - был вне офиса. В ближайшее время выложу сюда больщой комментарий, а пока - несколько ответов на вопросы.

1. Что есмь XML и что нужно почитать что бы набросать пару своих кирпичей?

XML есть XML, универсальный формат хранения информации. Почитать можно, если в пункте меню Help выбрать Brief tutorial, а на той страничке, которая откроется - выбрать пункт 5.

Для всех остальных ;-) http://www.rendermania.com/shaderman/

2. возможность колапсить сложные сетки из кирпичей (в один кирпичик) и записывать их в собственную библиотечку

В принципе, можно делать уже сейчас - но геморройно. В следующей бете сделаю автоматизированно. Равно как и сделаю нормальный экспорт в SLI, а не эту нынешнюю затычку.

3. а ты сам как пользуешься SlcEditor и ShaderMan-ом?

В подавляющем больщинстве случаев те шейдеры, что мне нужны для чего-то, получаются из стандартных моделей (matte, blinn etc) путем настройки - скажем, привешивания везде текстур, добавления нойза или дополнительных параметров. Посему - сначала делаю каркас шейдера или полностью шейдер из кирпичей, потом в Rhino делаю тестовую сцену, из нее делаю template для SlcEditor, отлаживаю параметры, текстуры, если надо - лезу в код или делаю новый кирпичик для ShaderMan.

Ну а если надо сделать что-либо отвлеченное - ну тогда лучше Notepad может быть только Notepad - или вот я потихоньку сделал SlEditor - с подсветкой синтаксиса ;-)))

Пока все. Позже будет еще.
 
#2
> Ну а если надо сделать что-либо отвлеченное - ну тогда лучше Notepad
> может быть только Notepad - или вот я потихоньку сделал SlEditor - с
> подсветкой синтаксиса ;-)))

О! Это то, что надо!!! И если он еще с индикацей номеров строк в статусной строке - тогда я щас прямо и встану на колени :)!
 
#3
Я настроил EditPluse на подсветку синтаксиса (как слимовского так и рендермановского). Кроме того, сделал так, что по хот-кею можно вызывать контекстный хелп по встроенным в рендерман функциям (к сожалению только 3.1 спецификации).
 
#4
Тоже здОрово. Но к своему стыду не знаю, что такое EditPulse. Номер строки показывает? А то в Notepad'е замучаешься искать забытую скобку по номеру строки...
 
#5
Я посей день юзаю Far...
в его редакторе и номера строк и поиск и измена...
Чертовски удобно . Подправил пару строк, вышел, откомпилил.
 
#7
А кстати, у нас тут по-моему родилась идея нового софта, что-то типа Visual SL :) Пишешь себе текст, потом запускаешь compile, видишь ошибки, по которым курсор скачет, потом - make и видишь свой отрендеренный шейдер, нанесенный на объект в одной из preset-ных или своих собственных сцен.
Если забыть о жизненных реалиях и раскатать губы - можно и дебаггер себе представить...
Теоретически тут ничего особо сложного нет - это не про дебаггер, конечно, хотя... Ну вот такая идея простейшего трейсера: перед компиляцией втыкаем после каждой строки шейдера printf и выводим номер строки и значения _всех_ переменных (или только нужных). При рендеринге запускаем рендерер с переназначеным stdout и читаем всю эту тряхомудь, фильтруя по номеру строки... Полный маразм, или как?
 
#8
Нет. Имея в виду тот факт, что есть знакомый (Ian Stephenson), который написал сам компилер и рендерер (angel) и готов ими поделиться - никаких проблем, кроме той - кто этим будет заниматься ;-)

Это я по поводу дебаггера. Кстати, этот самый Ян пишет таковой дебаггер - но тот будет работать только под OpenStep/MaxOsX.

Так что если кто-то хочет попробовать - попробовать можно, тем более, что дебаггер - это единственная нереализованная функциональность, все остальное есть.
 
#9
Да, иногда жалеешь, что в сутках всего 24 часа да и мозги не безразмерные... Ну это я так.
А по теме: почему именно OpenStep/MacOsX?
 
#10
А он в свое время писал Animo - а тот жил первоначально на NeXT - и с тех пор несколько присел на удобство платформы. Хотя все последние программы делает максимально портабельными - Win32, Linux, Irix, Sun; но именно этот проект (т.н. Buffy) - почему-то только под OpenStep.

www.dctsystems.freeserve.co.uk

p.s. А времени действительно не хватает...
 
#11
Номер строки показывает конечно (можно отключить). И ответные скобки показывает. А если в общем, то это просто настраиваемый текстовый редактор, для любителей иногда и попрограммить. Я выбрал его потому что можно хелп настроить (у меня там еще и контекстный хелп по маевским мелам). Если интересно можно на http://www.editplus.com/ посмотреть. Да, могу и список ключевых слов скинуть (только он немного неполный :)

Что касается редактора, компилятора, и дебагера в одном флаконе, то я в основном темплейты пишу, а в этом случае и компилятор и дебагер уже есть в Слиме - записываешь темплейт, щелкаешь в слиме релоад и можно пререндеривать уже подправленный вариант (или править свои ошибки :)). Однако я ни в коем случае не против хороших совтов :)
 
#12
Список ключевых слов - бросай, пригодится. Заодно расскажи, как ты help прикрутил.

Кстати, я когда-то сделал из SL части спецификации - CHM файл с полным поиском, деревом и прочим. Как полагается, выложил к себе на страницу с полными сорцами, перловыми скриптами и прочими делами - и честно в c.g.r.r. рассказал, мол я из закопирайченного продукта сделал конфетку.

Pixar в лице lg ответил молниеносно.

Страницу я убрал и извинился. Правда, сам этим файлом пользуюсь ;-) Даже более того - сам CHM файл я с сайта так и не убрал, и некоторые до сих пор скачивают ;-)) Только не говорите никому :cool:))
 
#13
>>Даже более того - сам CHM файл я с сайта так и не убрал, и некоторые до >>сих пор скачивают ;-)) Только не говорите никому :cool:))

А вот отсюда пожалуйста поподробней....типа ссылочку.
Ларь и пиксаров тут нету.
 
#14
http://www.dream.com.ua/downloads/rmspec.chm - по-моему, я оставил полную спеку. Могу выложить ее SL часть.

Что-то сегодня форум получается имени меня ;-))
 
#16
Хелп в Edit Pluse прикручивается легко, для этого там есть спец тулз. Указываешь в качестве команды ....\IEXPLORE.EXE а в качестве аргумента ...\RISpec\section15.html#$(CurWord). Для других случаев действуешь аналогично (например для Маи ...\html\Commands\$(CurWord).html).
Кстати очень удобно в w2k создать индексную службу и свой information service, который будет поддерживать веб сайт, а в качестве наполнения положить докоу по пиксару. Тогда можно будет искать по ключевым словам по всем докам.

Кстати, а где, приблизительно конечно:), искать CHM файл? Обещаю ни кому не говорить :)

Список слов (одинаковые слова могут встерчаться и среди функций и среди темплейтовых директив):
---------------------------------------------------------------
функции:
---------------------------------------------------------------
lightsource
PI
radians
sin
asin
cos
acos
tan
atan
abs
asin
ceil
clamp
cos
degrees
Du
Dv
Deriv
exp
floor
log
max
min
mod
noise
pow
radians
random
round
sign
sin
smoothstep
spline
sqrt
inversesqrt
step
tan
area
calculatenormal
depth
distance
faceforward
fresnel
length
normalize
transform
ctransform
vtransform
ntransform
reflect
refract
setxcomp
setycomp
setzcomp
xcomp
ycomp
zcomp
comp
mix
setcomp
ambient
diffuse
phong
specular
trace
bump
environment
shadow
texture
incident
opposite
printf
determinant
ctransform
match
ptlined
filterstep
cellnoise
specularbrdf
textureinfo
rendererinfo
pnoise
concat
format
match
translate
rotate
scale
attribute
option

---------------------------------------------------------------
почти несортированное остальное барахло:
---------------------------------------------------------------
global
slim
extensions
palette
appearance
instance
template
function
property
parameter
collection
attribute
torattribute
previewinfo
customui
expressionui
customui
connection
drawmode
frame
guiinfo
icon
identity
index
instance
LaunchExpression
lighttype
master
objectshape
objectsize
palettereference
previewinfo
provider
RSLFunction
RSLMain
RSLSource
shadingrate
state
TclTkSource
torattribute
value
shadingmodel
pixar
foreach
label
default
detail
range
subtype
description
display
output
access
hidden
RSLFunction
catch
extern

Cs
Os
P
Ps
dPdu
dPdv
N
Ng
u
v
du
dv
s
t
L
Cl
Ol
E
I
ncomps
time
Ci
Oi
alpha
Ka
Kd
Ks
Km

void
float
point
vector
normal
color
string
matrix
varying
uniform

if
else
for
while
break
continue
return
solar
illuminate
illuminance

light
surface
volume
displacement
transformation
imager
texture
environment
bump
shadow



 
#17
местоположение CHM - я уже писал об этом выше по ссреду ;-)

за список слов спасибо, надо будет сравнить со своим...

а ставить IIS только для того, чтобы смотреть на help через него - это изврат, говорю как девелопер ;-)
 
#19
Ну, на колени станоситься не надо, тем более что софт пока сыроватый, но юзать можно ;-)

Да, показывает номера строк, и после компилляции даже пытается перейти в строку, в которой был баг.

Вот закончу с ShaderMan - или просто найду свободные 10 минут ;-) - и вернусь к этой программке - надо бы и ее дописать....
 
Сверху