ページ

2011年7月23日土曜日

[Context Free Art] [Realm of the Mad God] Paladinたん描いてみた

このエントリーをはてなブックマークに追加





###############################
# Context Free Artとの出会い
###############################
最近お絵かきがしたいなぁ~と思いお絵かきをすることにしました.
しかし, お絵かきをするには大きな壁が合ったのだ!!
それは...
私には画力のかけらも無いということだ...orz

そこで!!ggrksの精神で調べたところ

Context Free Art」というツールを見つけた.

このContext Free Artはフラクタルのような
文脈自由文法を描くようなものだけどペンタブを握らないで
簡単なコードを描くだけでちょっとしたものが描けるので
今回は最近私がハマっているオンラインゲーム
Realm of the Mad God の Class である Paladinたんを描いてみました. (コードは下記)




###############################
# コードに付いて
###############################
このツールは再帰関数くらいしか意識しなくてよいので非常に使いやすいですが
変数が無いのでコードを書人には少し物足りないものです.

それと!!何も新しいこともすごいコードも書いていません. ゴリ押し


####################################
# paladin.cfdg
#
# hue 任意の値 sat 任意の値 (0~1) b 任意の値 (0~1)
# 上記の任意の値を変更することによって色を変更することが可能 (HSB Color)
# cubes関数内のCUBE関数のoptionを変えることによって1ブロックの色の変更が可能
#
# // はコメントアウト必要な場合は削除してください
####################################

startshape cubes

//================================
// 8 * 8
//================================
rule cubes {

//================================
// 0 (top)
//================================
CUBE{hue 0 sat .0 b .5}
CUBE{x - 1 y .58 hue 0 sat 0 b .85}
// CUBE{x - 2 y 1.16 hue 0 sat 0 b 1}
CUBE{x - 3 y 1.74 hue 58 sat 1 b 1}
CUBE{x - 4 y 2.32 hue 58 sat 1 b 1}
CUBE{x - 5 y 2.90 hue 58 sat 1 b 1}
// CUBE{x - 6 y 3.48 hue 0 sat 0 b 1}
CUBE{x - 7 y 4.06 hue 0 sat 0 b .85}

//================================
// 1
//================================
CUBE{y - 1 hue 0 sat .0 b .5}
// CUBE{x - 1 y - .42 hue 0 sat 0 b 1}
CUBE{x - 2 y .16 hue 58 sat 1 b .75}
CUBE{x - 3 y .74 hue 58 sat 1 b 1}
CUBE{x - 4 y 1.32 hue 58 sat 1 b 1}
CUBE{x - 5 y 1.90 hue 58 sat 1 b 1}
CUBE{x - 6 y 2.48 hue 58 sat 1 b .75}
// CUBE{x - 7 y 3.06 hue 0 sat 0 b 1}

//================================
// 2
//================================
CUBE{y - 2 hue 0 sat .0 b .5}
// CUBE{x - 1 y -1.42 hue 0 sat 0 b 1}
CUBE{x - 2 y -.84 hue 58 sat .5 b .9}
CUBE{x - 3 y -.26 hue 0 sat 0 b 0}
CUBE{x - 4 y .32 hue 58 sat .5 b .9}
CUBE{x - 5 y .90 hue 0 sat 0 b 0}
CUBE{x - 6 y 1.48 hue 58 sat .5 b .9}
// CUBE{x - 7 y 2.06 hue 0 sat 0 b 1}

//================================
// 3
//================================
CUBE{y - 3 hue 0 sat .0 b .5}
// CUBE{x - 1 y -2.42 hue 0 sat 0 b 1}
CUBE{x - 2 y -1.84 hue 58 sat .5 b .9}
CUBE{x - 3 y -1.26 hue 58 sat .5 b .9}
CUBE{x - 4 y -.68 hue 58 sat .5 b .9}
CUBE{x - 5 y -.10 hue 58 sat .5 b .9}
CUBE{x - 6 y .48 hue 58 sat .5 b .9}
// CUBE{x - 7 y 1.06 hue 0 sat 0 b 1}

//================================
// 4
//================================
CUBE{y - 4 hue 58 sat .5 b .9}
CUBE{x - 1 y -3.42 hue 58 sat 1 b .75}
CUBE{x - 2 y -2.84 hue 58 sat 1 b .75}
CUBE{x - 3 y -2.26 hue 58 sat 1 b 1}
CUBE{x - 4 y -1.68 hue 58 sat 1 b 1}
CUBE{x - 5 y -1.10 hue 58 sat 1 b 1}
CUBE{x - 6 y -.52 hue 58 sat 1 b .75}
CUBE{x - 7 y .06 hue 58 sat 1 b .75}

//================================
// 5
//================================
CUBE{y - 5 hue 35 sat .8 b .4}
// CUBE{x - 1 y -4.42 hue 0 sat 0 b 1}
CUBE{x - 2 y -3.84 hue 35 sat .8 b .4}
CUBE{x - 3 y -3.26 hue 35 sat .8 b .6}
CUBE{x - 4 y -2.68 hue 0 sat 0 b .5}
CUBE{x - 5 y -2.10 hue 35 sat .8 b .6}
CUBE{x - 6 y -1.52 hue 35 sat .8 b .4}
CUBE{x - 7 y -.94 hue 58 sat .5 b .9}

//================================
// 6
//================================
CUBE{y - 6 hue 0 sat 0 b 1}
// CUBE{x - 1 y -5.42 hue 0 sat 0 b 1}
CUBE{x - 2 y -4.84 hue 58 sat 1 b .75}
CUBE{x - 3 y -4.26 hue 58 sat 1 b .75}
CUBE{x - 4 y -3.68 hue 58 sat 1 b .75}
CUBE{x - 5 y -3.10 hue 58 sat 1 b .75}
CUBE{x - 6 y -2.52 hue 58 sat 1 b .75}
// CUBE{x - 7 y -1.94 hue 0 sat 0 b 1}

//================================
// 7 (bottom)
//================================
// CUBE{y - 7 hue 0 sat 0 b 1}
// CUBE{x - 1 y -6.42 hue 0 sat 0 b 1}
CUBE{x - 2 y -5.84 hue 35 sat .8 b .4}
// CUBE{x - 3 y -5.26 hue 0 sat 0 b 1}
// CUBE{x - 4 y -4.68 hue 0 sat 0 b 1}
// CUBE{x - 5 y -4.10 hue 0 sat 0 b 1}
CUBE{x - 6 y -3.52 hue 35 sat .8 b .4}
// CUBE{x - 7 y -2.94 hue 0 sat 0 b 1}

}

rule CUBE {
2 * {s -1 1 b .15 }SIDE{}
TOP{}
}

rule SIDE {
FACE{skew 0 30}
}

rule TOP {
FACE[s 1.413 .816 r 135 b .5]
}

rule FACE {
SQUARE{x .5 y -.5}
}

############################################

参考
context free art (documentation)