とりあえず背景の仕事が終了
月に1点仕上げるハイペースでしたが
無事終了しました
ひゅーどんどん
当初、2点のはずだったのですが
ありがたい事に1点多くもらえました。
稼働したら報告できるかもです。
そして、そのまま次の仕事に。
今回は、キャラクターの
担当をさせてもらってます
(頼みこみました)
スケジュールがタイトですががが :p
ノリノリで作業中です・・・。
既にRIGは存在してますので、
モデリング > アニメーションのみですが
この次はRIGを含めて挑戦したいものです。
しかし、今更ながら絵力の
必要性を感じております。
平たく言えばエロ可愛い女の子を描きたいですネ! :p
いつも描いてて不細工&バランスが
取れなくて断念しちゃうんですが
もう一度挑戦してみようかと思いますヨ
2013年6月21日金曜日
2013年6月1日土曜日
PhotoshopScript : SwitchLayers v01 レイヤーの表示切り替え
相変わらず忙しいので、いつもながらチラ裏です スミマセン
いつかまともなサイトを作りたい物です・・・
今回もPhotoshopのスクリプトです
Photoshopで画像の差分制作を行います
エロではありません。
いや、むしろエロでつかったら俺にください!!!
・・・というわけで、差分のレイヤー表示を簡単に
するべく作ったスクリプトです
命名法則により、表示、非表示を
一括で切り替えるスクリプトです
■Unhide
名前がマッチした場合、表示する
■Hide Group
名前がマッチした場合、非表示にする
※表示に入っている場合は無視されます
■その他
・その他のレイヤーの表示は変更しません
・レイヤーセットの名前が適合した場合、
それ以下のレイヤーの表示は変更しません
現在、表示レイヤーをtga保存する
ところまでいけました
次は一括出力です。
この手の作業はなるべく自動化しておきたい物ですヨ
いつかまともなサイトを作りたい物です・・・
今回もPhotoshopのスクリプトです
Photoshopで画像の差分制作を行います
エロではありません。
いや、むしろエロでつかったら俺にください!!!
・・・というわけで、差分のレイヤー表示を簡単に
するべく作ったスクリプトです
説明
命名法則により、表示、非表示を
一括で切り替えるスクリプトです
■Unhide
名前がマッチした場合、表示する
■Hide Group
名前がマッチした場合、非表示にする
※表示に入っている場合は無視されます
■その他
・その他のレイヤーの表示は変更しません
・レイヤーセットの名前が適合した場合、
それ以下のレイヤーの表示は変更しません
SwitchLayers
//SwitchLayers
// 05 28 2013
//Global
var LEFT = 20
var TOP = 20
var BUTTON_W = 100
var OFFSET_W = 125
var BUTTON_H = 25
var OFFSET_H = 40
//初期に設定されるグループネーム
var textChkGroupName = "p1,p2,p3,p4,p5,p6,p7,p8,p9";
var gUnHideObjectName = "homhom"
var gHideObjectNameGroup = ["hamham"]
//レイヤーに対するアクションA
function layerActionA( in_Layer ){
//alert( "ActionA Match " + in_Layer.name )
in_Layer.visible = true
}
//レイヤーに対するアクションB
function layerActionB( in_Layer ){
//alert( "ActionB GMatch " + in_Layer.name )
in_Layer.visible = false
}
//名前検索(グループ)
function chkNameGroup( trget_Name )
{
for ( var i = 0; i < gHideObjectNameGroup.length; i++)
{
if (trget_Name.match( gHideObjectNameGroup[i] ) ){
return true
}
}
return false
}
//名前検索
function chkName( trget_Name ){
//alert(gUnHideObjectName)
if ( trget_Name.match( gUnHideObjectName ) ){
return true
}
return false
}
//再帰関数
function getAllLayer(parent){
//alert(gUnHideObjectName)
var ChildLayers= parent.layers;
for (var i = 0; i < ChildLayers.length; i++){
if (ChildLayers[i].typename == "LayerSet"){
//レイヤーセットの場合の処理
//alert("LayerSet Name = " + ChildLayers[i].name)
if( chkName( ChildLayers[i].name ) ){
layerActionA( ChildLayers[i] )
continue;
}
else{
//該当する名前がグループのみにあった場合
if ( chkNameGroup( ChildLayers[i].name) ){
layerActionB( ChildLayers[i] )
continue;
}
}
//再帰処理
getAllLayer(ChildLayers[i]);
}else{
//通常のレイヤーの場合の処理
// alert("Layer Name = " + ChildLayers[i].name)
if( chkName( ChildLayers[i].name ) ){
layerActionA( ChildLayers[i] )
}else{
//該当する名前がグループのみにあった場合
if ( chkNameGroup( ChildLayers[i].name) ){
layerActionB( ChildLayers[i] )
}
}
}
}
}
function switchLayers(uDlg){
//alert("changeViewVis")
//ダイアログからグローバル変数の設定
gUnHideObjectName = uDlg.unhideName.text
gHideObjectNameGroup = uDlg.hideGroupName.text.split(",")
//alert(gUnHideObjectName)
//for ( var i = 0; i < gHideObjectNameGroup.length;i++)
// alert(gHideObjectNameGroup[i])
//実作業
var parent = activeDocument;//作業するドキュメントの参照
getAllLayer(parent);
refresh();
}
function main(){
app.bringToFront();
//ドキュメントが開かれているかどうか判別
if (app.documents.length ==0){
alert("No Docment")
return;
//ドキュメントが開かれていない場合処理なし
}
var uDlg = new Window('dialog','switchLayers');
uDlg.bounds = [200,300,580,420];
//uDlg.opacity = .9;
uDlg.sText = uDlg.add("statictext", [ 20, 10, 140, 10 + BUTTON_H], "UnHide (Unique)");
uDlg.unhideName = uDlg.add("edittext", [150, 10, 250, 10 + BUTTON_H], "p1");
uDlg.sText = uDlg.add("statictext", [ 20, 40, 140, 40 + BUTTON_H], "HideGroup(split(','))");
uDlg.hideGroupName = uDlg.add("edittext",[150, 40, 360, 40 + BUTTON_H], textChkGroupName);
uDlg.btnCancel = uDlg.add("button", [150, 70, 250, 70 + BUTTON_H], "Close");
uDlg.btn00 = uDlg.add("button", [270, 70, 360, 70 + BUTTON_H], "Apply");
uDlg.btnCancel.onClick = function () {
//alert("キャンセルされました。");
uDlg.close();
}
//ボタンを押されたときの設定
uDlg.btn00.onClick = function ()
{
//switchLayers(uDlg);
activeDocument.suspendHistory('switchLayers', 'switchLayers(uDlg)'); //margin(gap);
}
uDlg.show()
//alert("finish")
}
main()
展望
現在、表示レイヤーをtga保存する
ところまでいけました
次は一括出力です。
この手の作業はなるべく自動化しておきたい物ですヨ
2013年5月27日月曜日
PhotoshopScript : 現在のレイヤーをラスタライズする
最近Photoshopの使用率がうなぎのぼりです。
Photoshopのスクリプトは作りにくくてしょうがないので
あまり手を出していなかったんですが。
もうどうにも、めんどくさいので手をだして見ました。
PhotoshopCS6にはレイヤーをラスタライズなんて
機能があるんですが、うちのcs5さんにはありません。
でも、レイヤースタイルがんがん使うよね・・・
というわけで、作ってみた
なんかまだ上手く動かない場合がある・・・。
ねこまたや
雪待夜
Adobe サイト
LayerIDの取得(あまり役に立たなかったけど)
Adobe Configurator 3.1.1
そらかぜ工場
うたげ カラーピッカー
Photosopでカラーサークルが使えるプラグイン
Photoshopのスクリプトは作りにくくてしょうがないので
あまり手を出していなかったんですが。
もうどうにも、めんどくさいので手をだして見ました。
PhotoshopCS6にはレイヤーをラスタライズなんて
機能があるんですが、うちのcs5さんにはありません。
でも、レイヤースタイルがんがん使うよね・・・
というわけで、作ってみた
なんかまだ上手く動かない場合がある・・・。
Rasterization
//現在のレイヤーをラスタライズする
//
// 05 23 2013
function CreateNewLayer( in_Name ){
newLay = activeDocument.artLayers.add()
newLay.name = in_Name
return newLay
}
function Rasterization(){
//現在のレイヤーを取得
var Lays = activeDocument.artLayers
var ActiveLayer = activeDocument.activeLayer
var tempName = ActiveLayer.name
ActiveLayer.name = "homhom"
//新しいレイヤーを作成
newLayer = CreateNewLayer( tempName )
//新しいレイヤーをアクティブレイヤーの下に移動
newLayer.move(ActiveLayer,ElementPlacement.PLACEAFTER)
//二つのレイヤーをマージ
activeDocument.activeLayer = ActiveLayer
activeDocument.activeLayer.merge()
}
function main(){
Rasterization()
}
main()
参考サイト
ねこまたや
雪待夜
Adobe サイト
LayerIDの取得(あまり役に立たなかったけど)
その他 機能拡張
カスタムパネルの作成Adobe Configurator 3.1.1
そらかぜ工場
うたげ カラーピッカー
Photosopでカラーサークルが使えるプラグイン
2013年5月20日月曜日
2013年5月16日木曜日
LevelDesign : Modular Level Design for Skyrim
スカイリムのレベルデザイン
スカイリム面白かったです
参考になります! やっぱりパズルよね〜。
でも、自動生成装置を作って利用してると思うのよね
2013年5月15日水曜日
nDo2 : dDo : Tutorial
下書きのまま放置してた
nDo2を購入したが使い方が解らん
マニュアル無いの???
と言う訳でTutorialを調査
nDo2 workflow (+udk) UDK
写真からの作成
Texture Creation using nDo2
本家の基本チュートリアル
dDo - Feature Overview
2時間超え・・・。 Complete dDo Breakdown
dDoチュートリアル
nDo2を購入したが使い方が解らん
マニュアル無いの???
と言う訳でTutorialを調査
nDo2
nDo2 workflow (+udk) UDK
写真からの作成
Texture Creation using nDo2
dDo
本家の基本チュートリアル
dDo - Feature Overview
2時間超え・・・。 Complete dDo Breakdown
dDoチュートリアル
dDo : dDo 5.0
去年の年末のクリスマスセールで、
ToolBagとdDoを購入したのですが、
このたびめでたく、ご結婚なされました(ぉ
ということを3D人さんで知りました・・・Oh
Marmoset Skyshop – Quixel’s dDo 5.0と統合!
Unity3Dを採用したリアルタイムイメージベースドラインティングツール!Unity向けシェーダーもリリース予定!
ちょっと意外でしたが、
dDoのビューアーに Marmoset の SkyShop(未発売) を導入というのが正しいみたい
フローとしては、チェーンソウの詳しい
チュートリアルがございました
2時間でございます orz
とりあえずdDo4.5(購入時)を立ち上げたら、
アップデートで5.0になりました。
費用はかからなかったみたい ホッ
で、MAYAでやっていたように
dDoのマテリアルのプリセットfbxを
SI2014で読み込んでみました・・・。
かなり寂しいビューだったので
Hight Quarty Viewに!
パラメータを変えるたびに
コンパイルし待たされる・・・
Hight Quarty View
まだまだ仕事では使えないですね orz

正直、SIのVIewは使えないので、
AutoDeskさんが開発されているFBXViewer待ちですね。
せめてきれいなViewなMAXに持って行こうと思ったけど
SIから転送は出来ませんでした。
MAXさんからの一方通行なのね(Maxのシーンをアップデートはできる) orz
気を取り直して、MAXから送ろうかと思ったけど
今度はエラーで転送できなかった orz
何か設定が悪いのかな。
というわけで、検証までいたりませんでした
こんどこれを試してみます > リンク
チュートリアル2時間は長いよ orz
いや、詳しくてうれしいれす ;p
後日
再起動したら、無事にMAX > SIで来ました。
ただ、ショートカットはMAXになるし、MAXに持っていけるのはICEだけという
本当にSIをプラグインとして利用してました
AutoDeskさん、マジSIをプラグインとして扱ってマス orz
いいソフトなんだけど、値段と、この扱いで人に薦められません・・・ヨ
ユーザー減る一方なんだろうなぁ orz
ToolBagとdDoを購入したのですが、
このたびめでたく、ご結婚なされました(ぉ
ということを3D人さんで知りました・・・Oh
Marmoset Skyshop – Quixel’s dDo 5.0と統合!
Unity3Dを採用したリアルタイムイメージベースドラインティングツール!Unity向けシェーダーもリリース予定!
ちょっと意外でしたが、
dDoのビューアーに Marmoset の SkyShop(未発売) を導入というのが正しいみたい
フローとしては、チェーンソウの詳しい
チュートリアルがございました
2時間でございます orz
とりあえずdDo4.5(購入時)を立ち上げたら、
アップデートで5.0になりました。
費用はかからなかったみたい ホッ
で、MAYAでやっていたように
dDoのマテリアルのプリセットfbxを
SI2014で読み込んでみました・・・。
かなり寂しいビューだったので
Hight Quarty Viewに!
パラメータを変えるたびに
コンパイルし待たされる・・・
Hight Quarty View
まだまだ仕事では使えないですね orz

正直、SIのVIewは使えないので、
AutoDeskさんが開発されているFBXViewer待ちですね。
せめてきれいなViewなMAXに持って行こうと思ったけど
SIから転送は出来ませんでした。
MAXさんからの一方通行なのね(Maxのシーンをアップデートはできる) orz
気を取り直して、MAXから送ろうかと思ったけど
今度はエラーで転送できなかった orz
何か設定が悪いのかな。
というわけで、検証までいたりませんでした
こんどこれを試してみます > リンク
チュートリアル2時間は長いよ orz
いや、詳しくてうれしいれす ;p
後日
再起動したら、無事にMAX > SIで来ました。
ただ、ショートカットはMAXになるし、MAXに持っていけるのはICEだけという
本当にSIをプラグインとして利用してました
AutoDeskさん、マジSIをプラグインとして扱ってマス orz
いいソフトなんだけど、値段と、この扱いで人に薦められません・・・ヨ
ユーザー減る一方なんだろうなぁ orz
登録:
投稿 (Atom)