UE4 Particle チュートリアル11
LODやります
やったこと
パーティクルのlodの設定し、距離に応じて
・rateを下げる
・パーティクルを発生させなくする
やり方は結構簡単で
①「LODを追加」を押しレベルを追加する
②LOD のレベルごとの詳細設定をする( より高いレベルからの設定をベースに設定する )
③LOD の切り替えタイミングの設定をする
な流れになります
LOD DistanceCheckTime
lodの確認タイミング
LOD Method
切り替え方タイミングの設定
・Automatic ... 距離に応じて切り替える( 距離の確認タイミングは設定可能 )
・Direct Set ... ソースコード側で切り替える
・Active Automatic ... 時間に応じて切り替える( スポーンしたタイミングでlodのレベルが決まる )
LOD Distance
レベルを変える距離
UE4 Particle チュートリアル10
今回は新規プロジェクトに含めることができる「スターターコンテンツ」に含まれているパーティクルの説明です
本格的に作られているパーティクルの特徴的な設定などをピックアップして説明しています
便利な操作(カスケード)
・Sボタン
複数のエミッターがある時に、ボタンを押した他のエミッターを表示させなくすることができる
なお、✔ボタンでも表示/非表示の設定はできる
便利な操作(エディター)
・Endボタン
エディター上で、オブジェクトをつかんでいるときにEndボタンを押すと、何かにぶつかるまで下に移動する
なので、オブジェクトを地面に設置したい場合にとても有効な操作です
マテリアル
・DepthFade
半透明なオブジェクトと不透明なオブジェクトが交わった時にエッジが表示しないようにしたい場合に使用する
カメラからの距離に応じて透明度が変わる
・エフェクトに使用する画像をライティングに反映させる設定
Deteal -> Material -> ShadingModel で DefaultLit に選択
カスケード
・SubUVの遷移スピードを補完する
Requiewd->SubUVセクションで Interpolation Method で設定すればok
画像の作り直しではなくエディター側で調整できる機能は便利ですね
Fireパーティクルの炎の揺らめきはなにか専用の機能があると思っていたら画像のUVアニメーションを利用してたみたい
なるほどなー
C#とWPFのお勉強
今年のCEDECでWPFの話題が上がっていたものの、実際に触ったことが無いので触ります
ポッ拳におけるゲームエディタの設計と実装 | 公式サイト | CEDEC 2015 | Computer Entertainment Developers Conference
まず、ハンズオンで何か作ってみたかったのでこの方のスライドを参考にする
そもそもWPFとは
Windows Presentation Foundation の略
特徴
-それだけではなく描画周りはwindowsFormより優れている点が多い
・なめらかなui
-Animation機能が標準で搭載されている
・XAML(eXtensible Application MarkupLanguage)でつくるGUI
-XML形式の一種
ぱっと話を聞いた感じ、WindowsFormとよく比較されており、
それよりかなり便利になっているのがWPF
だからWPF使っとけ!みたいな話みたい
完成図
夕張さん is きゃわわ
また後日、処理の内容とか追っていきます
UE4 Particle チュートリアル9
ネットワークのやつの続きもやりたいけど、
今日はチュートリアルやりたい人間だったので い つ も の やります
アニメーショントレイルエミッタ
・軌跡なんかに使用できます
やったこと
・マテリアルとパーティクルの作成
・ボーンを指定して エミッターをくっつける
・パーティクルの微調整あれこれ
簡単でした
完成図
おまけ
FirstSocket : hand_l
SecondSocket : hand_r
にすると以下のような結果に
このように First , Secondの範囲でエフェクトが発生されるようです
python2.0で指定したファイルを削除(移動)するプログラム
ブログにプログラムを張ってみるテスト
起動するとバーッと削除(移動)したいファイルがリストアップされます
そのあと「y」押すだけで実行できます
# -*- coding: utf-8 -*- #import module import os import os.path import sys import shutil # define value targetPath = "F:\Library\Music" # path movePath = "F:\_moved" searchWord = " 1." # search word #define function #========================================================== # getDeleteFileList def getFileList( fileDir ) : #print( "getDeleteFileList : " + fileDir ) tmpFileList = os.listdir( fileDir ) #print( "listLength : " + len( tmpFileList ) ) resultFileList = [] for file in tmpFileList : filePath = fileDir + "\\" + file if os.path.isfile( filePath ): #print( filePath ) resultFileList.append( filePath ) elif os.path.isdir( filePath ): resultFileList += getFileList( filePath ) #recursive #else : #print( " invalid file name : " + filePath ) return resultFileList #========================================================== # pickUpToList def pickUpToList( list , word ) : resultFileList = [] #print( "list size " + str( len(list) ) ) #return resultFileList for file in list : if( str( file ).find( word ) != -1 ) : #print( file ) resultFileList.append( file ) return resultFileList #========================================================== # execDelete def execDelete( list ) : if( raw_input( 'excuteDelete ... y > ' ) == 'y' ) : for file in list : os.remove( file ) #========================================================== # execMove def execMove( list ) : if( raw_input( 'excuteMove ... y > ' ) == 'y' ) : for file in list : os.stat( file ) shutil.move( file , movePath ) #========================================================== # program start # is main ? if( not __name__ == "__main__" ) : print("not main.") print("finish program.") sys.exit(0) # targetPath check if( not os.path.isdir( targetPath ) ) : print("targetPath is invalid.") print("finish program.") sys.exit(0) print( "-- start -- " ) fileList = pickUpToList( getFileList( targetPath ) , searchWord ) #print( fileList ) for file in fileList : print( file ) execDelete( fileList ) #execMove( fileList ) print( "-- finish --" )
itunesの曲がいくつかかぶっていたのでで試しに作ってみました
UE4でネットワークやってみる
UE fes2015行ってきました
技術系の話は登壇者の話がとてもわかりやすく&面白そうな&すぐに実行できそうな内容が多かった印象でした
中でもalwaiさんのお手軽マルチプレイのセッションは実際にライブコーティングしながら、マルチプレイができる所までやってたので僕もやってみようかなと思いました
目標は、
①ネットワーク対戦で多人数プレイができる
②プレイヤーが球を発射することができ、相手に当たるとダメージを与えることができる
③オブジェクトなどを、サーバー/クライアント側で表示 & 処理がきちんとできること
って感じですかね
ひとまずやってみて③がうまくいかない感じ
ゲー開始時にクライアント側のobjectの生成位置がおかしい上に、荒ぶっているし、うまく同期できていないみたい
発射した弾は同期できてるっぽいんだけどなんだろう...
設定はこんな感じ
時間も時間なんでまた明日にでもやってみます
UE4 Particle チュートリアル8
軌跡の表現とかに使えます
やったこと
・Ribbonエミッターの作成
・2種類のエミッターから構成されるパーティクルの作成
・Sourceモジュール
今回のような何かのエフェクトを発生したい場合に使う
文字列でエミッターの名前を指定する必要がある
・SpawnPerUintモジュール
Sourceが動く距離に応じてパーティクルを発生させることができる
普段使うSpawnモジュールだと、エミッターの座標から生成してしまうのでこちらを使用
結果