BlackSheep-LSL@Wiki内検索 / 「llSetForceAndTorque」で検索した結果

検索 :
  • llGetTorque
    llGetTorque vector llGetTorque() トルクを得る。 トルクというのはオブジェクトの物理回転力のことである。 間違ってもティルクではない。 物理オブジェクトの「フォース」と言うと永続的なオブジェクトの運動力を指すが、フォースは直線的な力である。 トルクは同様に永続的な運動力だが、回転を与える力である。 llGetForce関数やllSetTorque?関数も参照のこと。 名前 コメント
  • 物理3D系
    ...er local) llSetForceAndTorque 関数 物理オブジェクトに物理的な力及び回転力を加える llSetForceAndTorque(vector force, vector torque, integer local) llSetHoverHeight 関数 オブジェクトの浮揚高度を設定する llSetHoverHeight(float height, integer water, float tau) llSetTorque 関数 物理オブジェクトに永続的な回転力を与える llSetTorque(vector torque, integer local) llStopHover 関数 浮遊状態を解除する llStopHover() llStopMoveToTarget 関数 オブジェクトのMoveTo制御を停止する llStopMoveToTarge...
  • llGetForce
    llGetForce vector llGetForce() フォースを得る。 主に惑星ダコパのマスター・ヨーダの元で修行を積むことで実現される機能である。 要するにオブジェクトに加えられている力(llSetForce?関数による)を調べるのに使う。 フォースについてより学びたい場合はllApplyImpulse関数を参照。 名前 コメント
  • リファレンス(機能別)
    ...er local) llSetForceAndTorque? 物理オブジェクトに物理的な力及び回転力を加える llSetForceAndTorque(vector force, vector torque, integer local) llSetHoverHeight オブジェクトの浮揚高度を設定する llSetHoverHeight(float height, integer water, float tau) llSetTorque? 物理オブジェクトに永続的な回転力を与える llSetTorque(vector torque, integer local) llStopHover? 浮遊状態を解除する llStopHover() llStopMoveToTarget? オブジェクトのMoveTo制御を停止する llStopMoveToTarget() 外部機能...
  • リファレンス(名前順)
    ...er local) llSetForceAndTorque? 物理オブジェクトに物理的な力及び回転力を加える llSetForceAndTorque(vector force, vector torque, integer local) llSetHoverHeight オブジェクトの浮揚高度を設定する llSetHoverHeight(float height, integer water, float tau) llSetLinkAlpha リンクプリムの透明度を設定する(参考) llSetLinkAlpha(integer linknumber, float alpha, integer face) llSetLinkColor リンクプリムの色を設定する(参考) llSetLinkColor(integer linknumber, vector color, inte...
  • llGetEnergy
    llGetEnergy float llGetEnergy() オブジェクトの残エネルギーを得る。 戻り値は0.0~1.0の範囲であり、残エネルギーの割合を示す。 0.0はエネルギーが完全に無いことを意味し、1.0は満タンである。 SLにおけるエネルギーとは、物理オブジェクトが持つ運動エネルギーのことで、以下の物理系関数を使ってオブジェクトを動かすと消費される。 llMoveToTarget llApplyImpulse llSetPos? llSetForce? llSetTorque? llApplyRotationalImpulse llPushObject エネルギーが減るとともに上記の関数は効果が弱くなっていき、ゼロになれば効果は無くなる。 つまり物理系関数を使ってオブジェクトを永久的に動かすことは不可能な仕様になっている。 しかしながら...
  • llApplyRotationalImpulse
    llApplyRotationalImpulse llApplyRotationalImpulse(vector force, integer local) 物理オブジェクトに瞬間的な回転力を加える。 回転の方向及び強さは引数forceで指定する。 引数localがTRUEの場合、forceはオブジェクトのローカル軸に対して働き、FALSEの場合はグローバル座標に対して働く。 物理オブジェクトに回転力を加える関数としては、大別してこのllApplyRotationalImpulse関数とllSetTorque?関数の二つがある。 この二種類の関数の違いは、加える回転力が瞬間的か恒久的かの違いである。 インパルス系の関数は、瞬間的な力である。 例えばコマの回転のように、最初に勢いよく回転力を与えた後は、徐々に勢いがなくなって停止する。 トルク系の関数は恒久...
  • llSetColor
    llSetColor llSetColor(vector color, integer face) 引数faceで指定した面の色を引数colorで指定した色にする。 色の指定はvector型で行うが、値の範囲は 0.0, 0.0, 0.0 ~ 1.0, 1.0, 1.0 となる。 3つの要素のうち先頭からRed、Green、Blueの色要素の指定となっている。 Webページ等の色指定で一般的なRGB形式は0~255の範囲で色要素の強さを指定するが、LSLでは0.0~1.0の範囲なので注意すること。 0~255の色要素をLSL用に変換するには、255で割り算してやれば良い。 一般的なRGB形式の指定値との対比を参考までに掲載しておく。 0~255 16進数 LSL 0 0 0 64 40 0.25 128 80 0.5 192 C0 0.75 255 FF 1...
  • llApplyImpulse
    llApplyImpulse llApplyImpulse(vector force, integer local) 物理オブジェクトに瞬間的な力を加える。 力の方向及び強さは引数forceで指定する。 引数localがTRUEの場合、forceはオブジェクトのローカル軸に対して働き、FALSEの場合はグローバル座標に対して働く。 物理オブジェクトに力を加える関数としては、大別してこのllApplyImpulse関数とllSetForce?関数の二つがある。 この二種類の関数の違いは、加える力が瞬間的か恒久的かの違いである。 インパルス系の関数は、瞬間的な力である。 例えばゴルフボールをグラブで引っぱたいたような場合、ボールに加えられる力は瞬間的なものであって、その後ボールは徐々にエネルギーを失い、落下する。 フォース系の関数は恒久的な力である。 ロケ...
  • 土地系
    土地系 BAN 関数・イベント名 区分 概要 定義 llAddToLandBanList 関数 土地からアバターをBANする llAddToLandBanList(key agent, float hours) llAddToLandPassList 関数 土地の通行許可をアバターに与える llAddToLandPassList(key agent, float hours) llRemoveFromLandBanList 関数 BANリストから指定アバターを削除する llRemoveFromLandBanList(key avatar) llRemoveFromLandPassList 関数 通行許可リストから指定アバターを削除する llRemoveFromLandPassList(key avatar) 土地 関数・イベント名 区分 概要 定義 llEdgeOfWor...
  • llAddToLandBanList
    llAddToLandBanList llAddToLandBanList(key agent, float hours) agentに指定したUUIDのアバターをhoursに指定した時間だけ土地のBANリストに追加する。 hoursに0.0を指定すると、無期限のBANとなる。 また、hoursの下限値は0.01で、1時間の1%は36秒であるから、最小BAN期間は30秒程度である。 BANリストからアバターを取り除く場合(=立ち入りを許可する場合)はllRemoveFromLandBanList関数を使用する。 なお、BANしたいアバターのUUIDがわからない場合はこの関数を使ってBANすることができない。 LSLにはアバター名からUUIDを取得する関数が存在しないので、名前だけしかわからない相手をBANするのは困難である。 「すみません、あなたをBANし...
  • llSetCameraParams
    llSetCameraParams llSetCameraParams(list rules) カメラを制御する。 制御用のパラメータはリスト変数に格納して引数rulesとして渡す。 引数rulesは以下の形式のリストでなければならない。 [パラメータ定数1, 値1, パラメータ定数2, 値2, . . . ] llSetCameraParams関数を使うには、カメラ制御パーミッションを取得していなければならない。 カメラ制御パーミッションは定数PERMISSION_CONTROL_CAMERAで定義されており、以下のようにして取得要求を出す。 llRequestPermissions(id, PERMISSION_CONTROL_CAMERA); 変数idはカメラ制御を行うアバターのUUIDである。 引数rulesに指定できるパラメータ定数と値...
  • llForceMouselook
    llForceMouselook llForceMouselook(integer mouselook) primに座ったアバターが強制的にマウスルックモードになるよう設定/設定解除する。 引数mouselookにTRUEを指定すると、そのprimに座ったアバターは強制的にマウスルックモードになる。 FALSEであればマウスルックモードにはならない(マウスルックモードの変更は行わない)。 すでに座っているアバターの視界をコントロールすることはできない。 座ったアバターをマウスルックモードにしたい場合は、あらかじめllForceMouselook(TRUE);を実行しておく必要がある。 一度この関数を使って強制マウスルックをONにした場合は、llForceMouselook(FALSE);を実行するまでその設定は有効である。 なお、この関数を使ったからといっ...
  • 制御系
    制御系 パーミッション 関数・イベント名 区分 概要 定義 run_time_permissions イベント パーミッション要求に返答があったとき[参考]初級lsl-11 run_time_permissions(integer perm) llGetPermissions 関数 スクリプトのパーミッション情報を知る integer llGetPermissions() llGetPermissionsKey 関数 スクリプトの保持しているパーミッション対象者のUUIDを得る[参考]初級lsl-13 key llGetPermissionsKey() llRequestPermissions 関数 パーミッションを要求する[参考]初級lsl-11 llRequestPermissions(key agent, integer perm) コントロール 関数・イベント名 区...
  • llSetLinkColor
    llSetLinkColor llSetLinkColor(integer linknumber, vector color, integer face) 引数linknumberのリンクprimに関して、引数faceで指定した面の色を引数colorで指定した色にする。 引数colorについてはllSetColor関数を参照。 引数faceについてはllGetColor関数を参照。 名前 コメント
  • 特殊効果系
    特殊効果系 アニメーション 関数・イベント名 区分 概要 定義 llGetAnimation 関数 指定アバターが実行中の基本アニメーションを得る string llGetAnimation(key id) llGetAnimationList 関数 指定アバターが実行中の全アニメーションを得る[参考]初級lsl-13 list llGetAnimationList(key id) llStartAnimation 関数 アニメーションを開始する[参考]初級lsl-13 llStartAnimation(string anim) llStopAnimation 関数 アニメーションを停止する[参考]初級lsl-13 llStopAnimation(string anim) 音 関数・イベント名 区分 概要 定義 llAdjustSoundVolume 関数 サウンドのボリュー...
  • llGetPrimitiveParams
    llGetPrimitiveParams list llGetPrimitiveParams(list params) primの属性値を返す。 引数paramsには取得したい属性のリストを指定する。 戻り値は引数に指定した属性に応じたリスト型のデータとなる。 基本的に、buildツールを使って指定可能なprimの設定値は全てこの関数を使用して取得できる。 また、この関数の戻り値を使ってllSetPrimitiveParams?関数を実行すると、buildツールと同様にprimを編集することが可能である。 これはつまりbuildの自動化が実現できることを意味する。 鏡面コピースクリプトなどは、この関数を使ってコピー元のprimの属性値を取得し、必要なパラメータに鏡面変換をかけた後、llSetPrimitiveParams?関数でコピー後のprimを形成する。 ...
  • llSetCameraAtOffset
    llSetCameraAtOffset llSetCameraAtOffset(vector offset) アバターがオブジェクトに座ったときのカメラ(視点)の向きを引数offsetで指定された方向に設定する。 この関数はアバターがオブジェクトに座る前に実行しておく必要がある。 すでに座っているアバターの視点をコントロールすることはできない。 例えば以下のコードはオブジェクトに座ったアバターの視点をオブジェクトの上方5mの位置に向ける。 default { state_entry(){ llSetCameraAtOffset( 0,0,5 ); } } オブジェクトに座ったときのアバターのカメラ位置(目の位置)を変更するにはllSetCameraEyeOffset関数を使う。 カメラの位置を方向をコントロールすると、例えばアバターがオブジ...
  • llHTTPRequest
    llHTTPRequest key llHTTPRequest(string url, list parameters, string body) 引数urlのアドレスに対してparametersとbodyを使ってHTTPリクエストを送る。 いわゆるWeb連携を行うための関数である。 urlに指定するのは、Webブラウザでお馴染みの、"http //"で始まるURLアドレスである。 parametersには以下のようなキーと値のセットをリストとして指定する。 [キー1, 値1, キー2, 値2...] 必要な数だけキーと値のセットを繰り返す。 指定できるキーは以下の通り。 キー キーの値 値の型 値の初期値 説明 HTTP_METHOD 0 string "GET" "GET&qu...
  • llGetAnimation
    llGetAnimation string llGetAnimation(key id) アバターが現在実行中のアニメーション状態名を返す。 アニメーション状態名とは、歩く、座る、飛ぶなどのアバターの基本動作を指す。 セカンドライフではアニメーション状態に応じて基本アニメーションが自動的に実行される。 例えば状態が「Walking」であれば「walk」アニメーションが実行される。 この関数の戻り値は以下のいずれかである。 戻り値 説明 基本アニメーション Crouching しゃがむ crouch Hovering 浮遊 hover Hovering Down 下降 hover_down Hovering Up 上昇 hover_up Jumping ジャンプ jump PreJumping ジャンプ前の動作 prejump Running 走る run S...
  • llSetAlpha
    llSetAlpha llSetAlpha(float alpha, integer face) 引数faceで指定した面の透明度をalphaにする。 alphaは0.0~1.0の範囲で指定し、0.0は完全透明、1.0は完全不透明である。 この関数で変更できる透明度はスクリプトの稼動しているprimの透明度だけである。 リンクprimの透明度を変更するにはllSetLinkAlpha関数を使って欲しいみたいだ。 引数faceに指定可能な値についてはllGetColor関数の説明を参照。 名前 コメント
  • llGetParcelFlags
    llGetParcelFlags integer llGetParcelFlags(vector pos) posで示される位置の土地の設定内容を得る。 設定内容とは「飛行可」「プッシュ可」等の土地ごとに設定されているルールのことを指す。 戻り値は以下の値を含むビットフィールドである。 定数名 値(16進数) 値(10進数) 説明 PARCEL_FLAG_ALLOW_FLY 0x1 1 飛行許可 PARCEL_FLAG_ALLOW_SCRIPTS 0x2 2 スクリプト許可 PARCEL_FLAG_ALLOW_LANDMARK 0x8 8 ランドマーク作成許可 PARCEL_FLAG_ALLOW_TERRAFORM 0x10 16 土地編集許可 PARCEL_FLAG_ALLOW_DAMAGE 0x20 32 ダメージ有効 PARC...
  • llSetCameraEyeOffset
    llSetCameraEyeOffset llSetCameraEyeOffset(vector offset) アバターがオブジェクトに座ったときのカメラ(視点)の位置を引数offsetで指定した場所に設定する。 引数offsetに指定するのはオブジェクトの中心からの相対位置である。 この関数はアバターがオブジェクトに座る前に実行しておく必要がある。 すでに座っているアバターの視点位置をコントロールすることはできない。 例えば以下のコードはオブジェクトに座ったアバターのカメラ位置をオブジェクトの後方(X軸マイナス方向)3mの位置する。 default { state_entry(){ llSetCameraAtOffset( -3,0,0 ); } } オブジェクトに座ったときのアバターのカメラの向き(視点の方向)を変更するに...
  • llSetLinkAlpha
    llSetLinkAlpha llSetLinkAlpha(integer linknumber, float alpha, integer face) 引数linknumberのリンクprimに関して、引数faceで指定した面の透明度をalphaにする。 alphaは0.0~1.0の範囲で指定し、0.0は完全透明、1.0は完全不透明である。 スクリプトの稼動しているprimの透明度を変更する際にはllSetAlpha関数を使っても良い。 引数faceに指定可能な値についてはllSetColor関数の説明を参照。 名前 コ...
  • データ系
    データ系 数学 関数・イベント名 区分 概要 定義 llAbs 関数 integer型の絶対値を得る integer llAbs(integer val) llAcos 関数 アークコサインを得る float llAcos(float val) llAsin 関数 アークサインを得る float llAsin(float val) llAtan2 関数 アークタンジェントを得る float llAtan2(float y, float x) llCeil 関数 少数以下を切り上げる integer llCeil(float val) llCos 関数 コサインを得る float llCos(float theta) llFabs 関数 float型の絶対値を得る float llFabs(float num) llFloor 関数 小数部を切り捨てる integer llFloor(f...
  • llSensorRepeat
    llSensorRepeat llSensorRepeat(string name, key id, integer type, float range, float arc, float rate) 一定間隔で繰り返し探知を実行するセンサーを起動する。 探知を行う間隔(秒数)を引数rateで指定する他はllSensor関数と同様である。 引数の詳細はllSensor関数を参照。 センサーを停止するにはllSensorRemove関数を使用する。 名前 コメント
  • llSensor
    llSensor llSensor(string name, key id, integer type, float range, float arc) 引数に指定した条件でセンサーを一度だけ実行する。 引数nameには探知対象の名前を指定する。 例えば「Miz」というアバターやオブジェクトを探したいときは、ここに"Miz"を指定。 探知対象の名前がわからない場合、または複数の異なる探知対象の名前がある場合は空文字""を指定する。 引数idは探知対象のUUID。 NULL_KEYを指定すると、全てのUUIDが探知対象になる。 引数typeは探知対象のタイプ。 どんなタイプのものを探すのかを指定する。 指定できるのは以下の4タイプ。定数を使って指定できる。 定数名 値 説明 AGENT 1 アバ...
  • llGetCameraPos
    llGetCameraPos vector llGetCameraPos() カメラの位置を取得する。 この関数を実行するにはPERMISSION_TRACK_CAMERAの取得が必要。 llGetCameraRot関数と組み合わせて使うことで、アバターがどこを見ているかを調べることができる。 以下の例はカメラ位置と注目点を表示するアタッチメントである。 llSetCameraAtOffset関数やllSetCameraEyeOffset関数に指定する値を調べるのに有用。 key avatar=NULL_KEY; vector pos; vector look; get_permission(){ key permkey = llGetPermissionsKey(); if (permkey != avatar || avatar == NUL...
  • prim間通信
    はじめに 色を変える 簡易版カラーチェンジャー 拡張性の問題 prim間通信の仕組みllMessageLinked関数 link_messageイベント カラーチェンジャースクリプト ロングタッチ 今回のポイント はじめに しばしばカツラなどに組み込まれている色変更のスクリプトを作ってみましょう。 単純に色を変えるだけのスクリプトであれば、ここまで読んできた方には簡単に出来ると思います。 ですが、今回は特にprim間の通信を行う方法使って、拡張性の高いスクリプトを考えてみたいと思います。 prim間通信とは、llMessageLinked()という関数を使い、リンクされているprim同士でメッセージをやり取りする方法です。 これを使うと、一つのprimを操作したときに、別のprimを操作することができるようになります。 色を変える primの色を変えるのは...
  • アバター/オブジェクト系
    アバター/オブジェクト系 アバター 関数・イベント名 区分 概要 定義 llGetAgentInfo 関数 指定アバターの状態を得る(飛行・AWAYなどの動作及びアタッチメントの有無等) integer llGetAgentInfo(key id) llGetAgentSize 関数 指定アバターのサイズを得る vector llGetAgentSize(key id) llPointAt 関数 現在動作せず llPointAt(vector pos) llRequestAgentData 関数 アバターデータの取得を要求する key llRequestAgentData(key id, integer data) llStopPointAt 関数 現在動作せず llStopPointAt() グループ 関数・イベント名 区分 概要 定義 llDetectedGroup 関数...
  • llSetHoverHeight
    llSetHoverHeight llSetHoverHeight(float height, integer water, float tau) 物理オブジェクトの浮遊高度を設定する。 引数heightは浮遊高度で、メートルで指定する。 厳密に言えば、浮遊させるというよりは指定した高度に見えないバリアみたいなものが出来て、物理オブジェクトがその上で"はずむ"イメージ。 "はずみ"具合を指定するのが三番目の引数tau。 数字が小さいほど"はずみ"方は固くなる。 数字が大きいと「うにょ~ん」という感じで指定した高度に動いていく。 引数本来の意味としては、指定した高度に物理オブジェクトが移動する際の「秒数」なので、秒数が少ないほど激しい動きで指定高度まで移動する。 秒数が多ければゆるやかな動きで指...
  • llGetParcelDetails
    llGetParcelDetails list llGetParcelDetails(vector pos, list details) posで示される位置の土地の情報を得る。 得られる情報は名称、説明、オーナーUUID、グループUUID、面積の5つ。 引数detailsには以下の値をリストにして指定する。 定数名 値 意味 文字長 戻り値の型 PARCEL_DETAILS_NAME 0 土地の名称 63 string PARCEL_DETAILS_DESC 1 土地の説明 127 string PARCEL_DETAILS_OWNER 2 土地オーナーのUUID (36) key PARCEL_DETAILS_GROUP 3 土地グループのUUID (36) key PARCEL_DETAILS_AREA 4 面積(sqm) (5)...
  • llParcelMediaQuery
    llParcelMediaQuery list llParcelMediaQuery(list query_list) 土地に設定されているメディアテクスチャ及びメディアURLを取得する。 引数query_listには以下の値を設定する。 定数 値 説明 PARCEL_MEDIA_COMMAND_TEXTURE 4 メディアテクスチャのUUIDを要求 PARCEL_MEDIA_COMMAND_URL 5 メディアURLを要求 query_listが[PARCEL_MEDIA_COMMAND_TEXTURE]であればメディアテクスチャのUUIDが返るし、[PARCEL_MEDIA_COMMAND_URL]であればメディアURLが返る。 [PARCEL_MEDIA_COMMAND_TEXTURE, PARCEL_MEDIA_COMMAND_URL]を指定すれば両方を...
  • llGetAndResetTime
    llGetAndResetTime float llGetAndResetTime() スクリプトの稼働秒数を取得し、かつ稼働秒数をリセット(ゼロに戻す)する。 稼動秒数を取得するだけの場合はllGetTimeを使う。 稼動秒数のリセットだけを行う場合はllResetTimeを使う。 以下の二つはほぼ同じ処理である。 default { touch_start(integer detected){ llSay(0, (string)llGetAndResetTime() + "seconds have passed."); } } default { touch_start(integer detected){ llSay(0, (string)llGetTime() + "seconds hav...
  • llRequestPermissions
    llRequestPermissions llRequestPermissions(key agent, integer perm) 引数agentで指定したUUIDのアバターに対して、引数permで指定したパーミッションの取得要求を出す。 パーミッション要求が出されると、アバターのクライアント上にパーミッションダイアログが表示され、許可もしくは不許可の回答を求められる。 アバターが回答するとrun_time_permissions?イベントが発生し、パーミッションが取得できたのか、それともできなかったかの判定を行うことができる。 引数permに指定可能な定数は以下の通り。 定数名 値 説明 使用可能になる関数 PERMISSION_DEBIT 2 スクリプトオーナーの所持金からの支払許可 llGiveMoney PERMISSION_TAKE_CONTROL...
  • 高度なカメラ制御
    はじめに カメラ制御とはポジション フォーカス ロック ディスタンス ピッチ ビハインドネス ラグ スレッショルド カメラ制御の関数llSetCameraParams関数 llClearCameraParams関数 llReleaseCamera関数 カメラ制御スクリプト俯瞰カメラ 固定追尾カメラ 完全固定カメラ カメラの動的制御 はじめに 「初級スクリプト」でカメラ制御について簡単な方法は紹介したのですが、さらに踏み込んだカメラ制御について書いておこうと思います。 高度なカメラ制御を使うと、一定の場所にカメラを固定するだけではなく、例えばアバターの周囲をぐるぐると回転させたり、俯瞰視点にしてみたり、はたまたカメラを固定してアバターが自由に歩き回れるようなものなど、面白い見せ方がいろいろとできます。 こうしたスクリプトは動画作成や乗り物、ライドなどに応用することができます。 ...
  • llGetInventoryType
    llGetInventoryType integer llGetInventoryType(string name) コンテンツ内にある指定した名前のアイテムのタイプを返す。 一般的に、引数nameで指定したアイテムがコンテンツ内に存在するかどうかをチェックするのに利用される。 戻り値は以下のいずれかとなる。 定数 値 説明 INVENTORY_NONE -1 アイテムは存在しない INVENTORY_ANIMATION 20 アニメーション INVENTORY_BODYPART 13 ボディパーツ INVENTORY_CLOTHING 5 服 INVENTORY_GESTURE 21 ジェスチャー INVENTORY_LANDMARK 3 ランドマーク INVENTORY_NOTECARD 7 ノートカード INVENTORY_OB...
  • ノートを使おう
    はじめに ノートカード読取の仕組みllGetNotecardLine関数 dataserverイベント 典型的なパターン ノートカード対応ベンダーllParseString2List関数 for文 今回の歩イント はじめに ベンダースクリプトの改良編です。 前回までで機能面は十分に満たすものを作りましたが、今回は使い勝手のよいものになるよう改造を施します。 改良点は商品データの管理の部分です。 前回までのスクリプトでは、商品データをリスト型変数に定義していましたが、この方法だと商品の追加や変更があったときにいちいちスクリプトを直さなければなりません。 そこで、商品データはSLのノートカードを使って管理するようにし、ノートカードを切り替えるだけで扱う商品を変えられるようなベンダーを考えます。 商品のデータに対して、そのデータを使ってアレコレ操作する仕組みを「ロ...
  • llGetBoundingBox
    llGetBoundingBox list llGetBoundingBox(key object) 指定したUUIDのオブジェクト(またはアバター)の当たり判定領域を取得する。 当たり判定の領域のことをバウンディングボックスと言う。 通常バウンディングボックスはオブジェクトをすっぽり覆う立方体で示される。 この関数の戻り値は、vector型変数を二つ含むリストである。 二つのvectorは、バウンディングボックスの最小コーナー座標及び最大コーナー座標を示す。 以下の例はLSL-Wikiからそのまま持ってきたスクリプトであるが、バウンディングボックスを視覚化する。 半透明のキューブに以下のスクリプトを仕込み、チャンネル3で対象のオブジェクト名を指定する。 例えば「/3 Miz Cremorne」と発言すれば、私のアバターのバウンディングボックスを見ること...
  • llGetInventoryName
    llGetInventoryName string llGetInventoryName(integer type, integer number) コンテンツ内にある指定したtypeのnumber番目のアイテムの名前を返す。 numberはゼロから始まるアイテムの番号である。 指定したアイテムが存在しない場合は空文字""が返る。 アイテムのタイプには以下の値を使用する。 定数 値 説明 INVENTORY_ALL -1 全種類 INVENTORY_ANIMATION 20 アニメーション INVENTORY_BODYPART 13 ボディパーツ INVENTORY_CLOTHING 5 服 INVENTORY_GESTURE 21 ジェスチャー INVENTORY_LANDMARK 3 ランドマーク INVENTO...
  • 看板を作ろう
    はじめに フローティングテキストllSetText関数 回転看板llTargetOmega関数 アニメーション看板llSetTextureAnim関数 地図看板llSetTouchText関数 llMapDestination関数 ランドマーク看板llGiveInventoryList関数 まとめ はじめに 第六回~第八回は初級スクリプトの最初の山場でした。 へヴィな内容が続きましたので、今回はちょっと息抜き的に、しかしながら実用的なスクリプトを作ってみたいと思います。 SLで店をやるという人は多いでしょう。 そして商品の販売用や、宣伝のために、看板を作りたいという人もいるかと思います。 綺麗なテクスチャさえ用意すれば、それなりの看板を作ることができますが、この記事は一応スクリプトの勉強ですのでw、スクリプトを使った動きのある看板に挑戦してみましょう。 照明...
  • エラー対応
    エラーが出る原因と対処方法についてまとめてみました。 LSLに関わって発生するエラーには主に3種類あります。 コンパイルエラー(Compiler Errors) ランタイムエラー(Run-Time Errors) ビルドエラー(Build Errors) 以下にエラーの種類と原因、対処方法について書いていますので参考にしてみて下さい。 コンパイルエラーSyntax Error Type mismatch Function call mismatches type or number of arguments Name not defined within scope Name previously declared within scope Use of vector or quaternion method on incorrect type Lists can...
  • パーティクル
    パーティクルとは パーティクル関数(llParticleSystem関数) パーティクルモジュールパラメータの説明マスク・パラメータ パターン・パラメータ その他詳細パラメータ 応用編 パーティクルとは 小技というわけではありませんが、パーティクルシステムについては設定すべきパラメータが非常に多く、わかりにくいという声をしばしば聞きます。 ですので今回はパーティクルシステムの解説とサンプル・スクリプトを書いておくことにします。 パーティクルとは粒子のことです。 SLのパーティクルシステムは、煙や火、水しぶきなどの粒子を表現するための仕組みのことを言います。 スクリプトを使う以外にパーティクルを制御する方法はありません。 従って、粒子を使った表現をしようと思ったら、パーティクルシステムのスクリプトを使わなければなりません。 よく見かけるパーティクルを列...
  • イベント系
    イベント系 タッチ 関数・イベント名 区分 概要 定義 touch イベント タッチされているとき touch(integer num_detected) touch_end イベント タッチが終了したとき touch_end(integer num_detected) touch_start イベント タッチが開始されたとき touch_start(integer num_detected) llSetTouchText 関数 パイメニューの「Touch」を他の文字列に変更する llSetTouchText(string text) アタッチ 関数・イベント名 区分 概要 定義 attach イベント アタッチ/デタッチされたとき[参考]初級lsl-21 attach(key id) llAttachToAvatar 関数 オブジェクトをAttachさせる ...
  • llGetInventoryNumber
    llGetInventoryNumber integer llGetInventoryNumber(integer type) 指定したtypeのアイテムがコンテンツ内にいくつあるかを返す。 アイテムのタイプには以下の値を使用する。 定数 値 説明 INVENTORY_ALL -1 全種類 INVENTORY_ANIMATION 20 アニメーション INVENTORY_BODYPART 13 ボディパーツ INVENTORY_CLOTHING 5 服 INVENTORY_GESTURE 21 ジェスチャー INVENTORY_LANDMARK 3 ランドマーク INVENTORY_NOTECARD 7 ノートカード INVENTORY_OBJECT 6 オブジェクト INVENTORY_SCRIPT 10 スクリプト INVE...
  • llGetVel
    llGetVel vector llGetVel() オブジェクトの速度(m/s)を得る。 戻り値はvectorであるので、当然ながらオブジェクトが移動している方向を知ることも可能である。 単純にオブジェクトの速度を得たいなら、 float speed = llVecMag(llGetVel()); とすると純粋な速度(m/s)がfloat型で得られる。 llVecMag関数はvectorの長さを得る関数。 オブジェクトの移動方向を知りたいなら、 vector normal = llVecNorm(llGetVel()); このようにすると長さ1mのvectorを得ることができる。 長さ1mのvectorのことを単位ベクトルと言い、何かと便利な代物である。 何が便利かって、例えば、オブジェクトの進行方向5m先の座標を得たいと思った...
  • llScaleTexture
    llScaleTexture llScaleTexture(float horizontal, float vertical, integer side) 引数faceで指定した面のテクスチャのスケール(リピート)を設定する。 スケールは引数horizontalで水平方向の倍率、引数verticalで垂直方向の倍率を指定する。 この関数で指定する水平・垂直方向のテクスチャ倍率は、ビルドツールで指定できる"Repeats per Face Horizontal (U)"及び"Vertical (V)"と等しい。 面の指定方法はllGetColor関数の説明を参照。 primの形状によって面番号は異なる。 この関数の実行には0.2秒かかる。 テクスチャのスケールをコントロールするには他にllSetPrimitiv...
  • テレポート
    テレポートハック 移動型テレポーター テレポートハック 初心者さん向けのスクリプト解説記事を書いたところ、 「んなことはわかってる!もっと役に立つことを書かんかい!」 というお叱りを受けたので(笑)、ある程度スクリプトのことはわかっている人向けに、スクリプトの小技を紹介するカテゴリを設けました。 まずは有名どころから。 「テレポートハック」と呼ばれるスクリプトです。 最初にスクリプトコードを載せておきます。 01 vector offset = 0.0, 0.0, 10.0 ; // テレポート位置 02 rotation rot = ZERO_ROTATION; 03 04 default { 05 state_entry(){ 06 llSitTarget(offset, rot); 07 } 08 ...
  • llParcelMediaCommandList
    llParcelMediaCommandList llParcelMediaCommandList(list command_list) 土地に設定可能なムービーメディアのコントロールを行う。 要するにQuickTime制御用の関数である。 この関数の実行には2秒かかる。 lslWikiに従い、土地にムービーを設置する手順から説明する。 1.土地を所有すること。自分に権限のある土地でなければムービーの設置はできない。 2.ムービー用テクスチャ(メディアテクスチャ)の設定。何でもいいが、ムービー再生画面となるテクスチャを用意する。このテクスチャを貼ったオブジェクト(の面)は全てムービー再生用画面になる。 3.再生するムービーのURLを設定。ムービーはインターネット上で閲覧可能な状態でなければSL内で再生できない。自分で作ったムービーであればレンタルHPスペー...
  • ダイアログを使おう
    はじめに ダイアログllDialog関数 ダイアログ対応版照明スクリプト リストを使いこなすllListFindList関数 今回のポイント はじめに 照明スクリプトだけで三回にも及んでしまいました(^^; ですが、照明スクリプト一回目の「ユーザー関数」、二回目の「listen」、そして今回の「ダイアログ」はlslの中でも使用頻度の高いものばかりですので、ぜひとも使い方をマスターしていただきたい部分です。 この回から初めて見たという方は、第六回の「照明を作ろう」から戻ってお読みいただくのが良いかと思います。 照明のスクリプト作成について順を追って解説しております。 さすがに照明スクリプトがこれだけ続くと、いいかげん目がチカチカして来そうですw 今回は頑張って完成まで行き着きたいと思います。さて照明スクリプトですが、前回までで、チャットで色名を発言することで照明の色...
  • @wiki全体から「llSetForceAndTorque」で調べる

更新順にページ一覧表示 | 作成順にページ一覧表示 | ページ名順にページ一覧表示 | wiki内検索

記事メニュー
目安箱バナー