スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


本物はどれだ?

にほんブログ村 デザインブログ 3DCGへにほんブログ村 IT技術ブログ ゲーム開発へにほんブログ村 ゲームブログ PCゲームへにほんブログ村

攻撃シャワーその2



前回の攻撃シャワー。攻撃範囲を増やそうとするとロジックも膨大な量になってしまいます。
なので、スクリプトを使ってみようと思います。
そうすると砲台ひとつでシャワーができます。

用意するものは砲台と弾です。

2015121401.png


BGEモード

砲台の物理設定を固定でゴーストに設定。
弾を剛体にして制限をつけておきます。

2015121402.png


スクリプトを使用します。

テキストエディターを用意し、スクリプトを書いていきます。



import bge
import math
import random

# 3種類のモジュールを使用 BGE 数学関数 ランダム

cont = bge.logic.getCurrentController()
act = cont.actuators["fire"]

s = 15 # 発射速度
k = random.uniform(-15,15) # k 角度

c = math.radians(k) # C 角度をラジアンに変換

x = s * math.sin(c) # x座標を求める
y = s * math.cos(c) # y座標を求める

act.linearVelocity = [x,y,0.0] # 線形速度

act.instantAddObject() # オブジェクトを追加します


2015121403.png


砲台にロジックを設定します。

センサー追加 常時
True チェック
スキップ(3ぐらい)

コントローラー追加
スクリプト(書いたスクリプトを指定)

アクチュエーター追加
オブジェクト追加 (名前を「 fire 」にする)
弾のオブジェクトを指定して時間を150ぐらいにする。
線形速度の右のほうのLをチェック(local)

2015121404.png


[P]を押します。すると……。

2015121405.png


同じ速度で弾が指定範囲をランダムに飛びます。

スクリプトの s の数値をいじれば速度が変わり、
k の(-15,15)の数値を大きくすると範囲を変えられます。

発射間隔は、ロジックのセンサーのスキップ値で変更できます。


実験成功!
スポンサーサイト


本物はどれだ?

にほんブログ村 デザインブログ 3DCGへにほんブログ村 IT技術ブログ ゲーム開発へにほんブログ村 ゲームブログ PCゲームへにほんブログ村

コメントの投稿

非公開コメント

………


モッピー!お金がたまるポイントサイト



メニュー
最新記事
プロフィール

つくつく つくに

Author:つくつく つくに
Blender
2.76 日本語UI使用
Windows7x64

©つくx2工房

最新コメント
月別アーカイブ
………






………


検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

………
にほんブログ村 デザインブログ 3DCGへ

にほんブログ村 IT技術ブログ ゲーム開発へ
にほんブログ村 ゲームブログ PCゲームへ
にほんブログ村


アフィリエイトのアクセストレード

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。