1. ホーム
  2. テレビ、オーディオ、カメラ
  3. カメラ
  4. カメラアクセサリー
  5. DC83★カシオBC-81L NP-80 EX-ZS100 EX-ZS5 等対応USB充電器
5周年記念イベントが SALE 69%OFF DC83 カシオBC-81L NP-80 EX-ZS100 EX-ZS5 等対応USB充電器 kentaro.sakura.ne.jp kentaro.sakura.ne.jp

DC83★カシオBC-81L NP-80 EX-ZS100 EX-ZS5 等対応USB充電器

266円

DC83★カシオBC-81L NP-80 EX-ZS100 EX-ZS5 等対応USB充電器

●相当純正型番
カシオ:BC-81L
ペンタックス:K-BC63J(下記対応バッテリーのみ対応), D-BC108J
フジフィルム:BC-45W(下記対応バッテリーのみ対応)
オリンパス:LI-30C, LI-40C, LI-41C(下記対応バッテリーのみ対応)

●対応バッテリー
(CASIO)
NP-80

(PENTAX)
D-LI63 / D-LI108

(FUJIFILM)
NP-45, NP-45A

(OLYMPUS)
LI-40B, LI-42B

※純正、互換バッテリー共に充電できます。

●対応カメラ
(OLYMPUS)
μ795SW / μ790SW / μ780 / μ770SW / μ760 / μ750 / μ730 / μ725SW / μ720SW / μ710 / FE-5010 / FE-5030 / FE-5050 / FE-4000 / FE-4010 / FE-4030 / FE-4050 / FE-3000 / FE-3010 / FE-360 / FE-350 Wide / FE-330 / FE-320 / FE-300 / FE-290 / FE-280 / FE-250 / FE-240 / FE-230 / FE-220 / FE-220D / FE-190 / FE-150 / IR-300 / SP-700 / CAMEDIA X-600
等上記バッテリーを使用するカメラ

■詳細は下方の「商品説明」をご覧ください
■スマートフォンの方は「商品説明情報をもっと見る」をタップし商品説明をご覧ください



USB型バッテリー用充電器(USBケーブル付属)です。

商品説明 バッテリー用充電器


USBケーブル付きです。
パソコンUSB口から充電が可能。

USB型ACアダプタ(iPhone等付属品)を使って、
家庭用コンセントからも充電可能。
※ACアダプター等は付属しません。

お手持ちのモバイルチャージャーからも充電が出来るので、
お出かけ時でも安心。

更に車内のUSBシガーチャージャーを使って充電が可能。

従来のAC充電器に比べ、半分以下のコンパクトなサイズと重量なので
持ち運びに便利。

USBは低い電圧の電源供給の為、
バッテリーを痛める事がなくバッテリーが長持ちします。

欧州連合安全規制適合品の証「CEマーキング」取得製品。
相当純正型番 (PENTAX)
K-BC63J / D-BC108J (下記対応バッテリーのみ対応しております)

(FUJIFILM)
BC-45W (下記対応バッテリーのみ対応しております)

(OLYMPUS)
LI-30C / LI-40C / LI-41C (下記対応バッテリーのみ対応しております)

(CASIO)
BC-81L (下記対応バッテリーのみ対応しております)
対応バッテリー (PENTAX)
D-LI63 / D-LI108

(FUJIFILM)
NP-45 / NP-45A

(OLYMPUS)
LI-40B / LI-42B

(CASIO)
NP-80

※純正・互換バッテリー共に充電できます。
※バッテリー型番をクリックすると、バッテリーの出品がご覧いただけます。
適用カメラ機種 (PENTAX)
Optio L36 / L40 / M30 / M40 / T30 / V10 / W30
Optio RS1000 / NB1000 / LS465

(FUJIFILM)
FinePix XP70
FinePix Z2000EXR / Z950EXR / Z900EXR / Z110 / Z90
FinePix JX700 / JX420 / JX400 / T500 / T400 / T300 / XP60 / XP30
FinePix J10 / J15fd / J27 / J30 / J150w / J250 / JX200
FinePix JX280 / JZ300 / Z10fd / Z20fd / Z30 / Z33WP / Z37
FinePix Z70 / Z80 / Z100fd / Z200fd / Z250fd / Z300
FinePix Z700EXR / Z800EXR / XP10 / Z1100EXR / JZ700 / JZ250

(OLYMPUS)
VH-210 / TG-320/ TG-310
μ-7050/μ-7040/μ-7020 /μ-7010 /μ-7000 /μ-5010 /μ-5000
μ-550WP /μ TOUGH-3000 /μ1200 /μ1070 /μ1060 /μ1050SW /μ850SW /μ830
μ795SW /μ790SW /μ780 /μ770SW /μ760 /μ750 /μ730 /μ725SW /μ720SW /μ710
FE-5010 / FE-5030 / FE-5050 / FE-4000 / FE-4010 / FE-4030 / FE-4050
FE-3000/ FE-3010 / FE-360 / FE-350 Wide / FE-330 / FE-320 / FE-300
FE-290 / FE-280 / FE-250 / FE-240 / FE-230 / FE-220 / FE-220D
FE-190 / FE-150 / IR-300 / SP-700 / CAMEDIA X-600
μ-mini DIGITAL/μ-mini DIGITAL S

(CASIO)
EXILIM EX-ZS180 / EX-ZS170 / EX-ZS160 / EX-ZS100 / EX-ZS5 / EX-Z88 / EX-Z270 / EX-Z1 / EX-G1
EXILIM ZOOM EX-Z550 / EX-ZS150 / EX-ZS6
EXILIM EX-H60 / EX-H50 / EX-JE10 / EX-N10 / EX-N1

等、上記対応バッテリーを使用するカメラ
充電器説明 ■DC入力: 5.0V

■出力:4.2V

■充電時間の目安:約2〜5時間
充電中は赤ランプ、充電完了後は緑ランプでお知らせします。
セル/製造国 中国製
保証期間 3ヶ月
その他 入荷時期によって写真とデザインが異なる場合があります。

■発送
ヤマト運輸のネコポスにて発送いたします。
お届け目安:出荷日より翌日〜2日程度 (北海道・沖縄・離島・一部地域除く)
日時指定はできません。
※通常時の目安ですので、繁忙期や交通・天候状況によりこの限りではございません。


■配送方法: メール便F (配送業者は指定不可)

※こちらの送料・配送情報の詳細は下記ページをご確認ください。

・Yahoo!ショッピングご利用の方:【お買い物ガイド】「お届け方法について」

・ヤフオク!をご利用の方:【ストア情報】「お届け方法について」

配送方法をご確認、ご了承の上ご注文ください。


■同梱について

(1)同梱可能な場合
●全てのご注文の配送方法が「宅配便」の場合に限ります。
(A)ご注文商品が【宅配送料無料】と【宅配送料別】の組み合わせの場合、送料必要。
(B)ご注文商品が【宅配送料別】と【宅配送料別】の組み合わせの場合、1件分送料のみ。

※別注文との同梱をご希望の場合、ご注文時の「ご要望欄」にて必ず同梱希望の旨をご記入下さい。ご記入のない場合、個別配送となります。
直接メール/お問い合わせフォーム等でのご要望は受け付けることができません。
※ご注文数により、配送が複数口になる場合は、口数分の送料が必要です。

(2)同梱不可の場合
●配送方法に「メール便」を含む2件以上のご注文。
●商品の形状、梱包特性等により同梱不可の宅配便商品。当方での判断となります為、同梱のご希望に添えない場合がございます。この場合、個別配送(個別送料)となります。
■■ご利用ガイド■■

●お支払い、配送方法、返品、領収書等については、【お買い物ガイド】をご確認ください。

【店舗情報】
株式会社フォー・シーズン didica
休業日:土日祝他

●当店へのご連絡はご注文履歴「注文に関する問い合わせ」、又はこちらから。

DC83★カシオBC-81L NP-80 EX-ZS100 EX-ZS5 等対応USB充電器

Yahoo!ショッピング - PayPayポイントがもらえる!ネット通販Yahoo!ショッピング - PayPayポイントがもらえる!ネット通販
全国総量無料で 660121506 NISMO ニスモ エンジンマウント シルビア S13 S14 S15 SR20DE SR20DET 11220-RS540 トラスト企画 ニッサン www.hotelpr.co.uk全国総量無料で 660121506 NISMO ニスモ エンジンマウント シルビア S13 S14 S15 SR20DE SR20DET  11220-RS540 トラスト企画 ニッサン www.hotelpr.co.uk
冷蔵庫 マット キズ防止 凹み防止 床保護シート Mサイズ 65×70cm 〜500Lクラス 厚さ2mm 無色 透明 国内正規一年保証 丸全 がま口財布 コインケース 晒3.3寸がま口 小魚 0
【聯合小熊】CASIO NP-20 充電器充電座Exilim EX-Z5 EX-Z60 EX-Z70 Z75 Z77 | 蝦皮購物【聯合小熊】CASIO NP-20 充電器充電座Exilim EX-Z5 EX-Z60 EX-Z70 Z75 Z77 | 蝦皮購物
看板 屋外用 立入禁止 プレート看板 条件付き送料無料 令和2年製造 アルミ複合板 関係者以外 注意看板 激安 Frame a board W35cm x H45cm Nopass-9
安いEXZ370の通販商品を比較 | ショッピング情報のオークファン安いEXZ370の通販商品を比較 | ショッピング情報のオークファン
pikayoupapa 4
一年前にスマートキー二個入るのを探しても無く。やっと見つかりました。免許証も一緒に入れられて良いです。欲を言えば、少し高級感が欲しかった。

坐骨神経痛 4
30g?45g?60g辺り、ヘビーウエイトのラインナップ増やして欲しいです。

CASIO カシオ NP-80 NP-82 対応 BC-80L BC-81L 互換 USB 充電器 ロワジャパン :CNP-80-UAC:ロワジャパン - 通販 - Yahoo!ショッピングCASIO カシオ NP-80 NP-82 対応 BC-80L BC-81L 互換 USB 充電器 ロワジャパン :CNP-80-UAC:ロワジャパン  - 通販 - Yahoo!ショッピング
レイズ 17HEXロックナットセット 5H M12XP1.25 ブラック スバル LED ろうそく ローソク 電子 ロウソク 蝋燭 仏壇 仏具 神棚 電池式 キャンドル ライト 燭台付 安心 安全 パンツ 「暖かな起毛のリネン」 リネンツイル 配色ポケットゆったりパンツ M~3L 秋冬 レディース エコロコ 2220AW1014, ハーブの苗 タイム(立性)
CASIO カシオ NP-80 NP-82 対応 BC-80L BC-81L 互換 USB 充電器 ロワジャパン :CNP-80-UAC:ロワジャパン - 通販 - Yahoo!ショッピングCASIO カシオ NP-80 NP-82 対応 BC-80L BC-81L 互換 USB 充電器 ロワジャパン :CNP-80-UAC:ロワジャパン  - 通販 - Yahoo!ショッピング
Lovely Parts 般若&おかめのお面(小) (シリコーン型・シリコン型)
じゅんやん 4
思ったよりリールが大きかったですが、竿の扱いやすさ等は申し分なく、コスパは高いです。遠投サビキで利用しています。ルアーは、使ってないんですが使ってみたいです。

全国総量無料で 660121506 NISMO ニスモ エンジンマウント シルビア S13 S14 S15 SR20DE SR20DET 11220-RS540 トラスト企画 ニッサン www.hotelpr.co.uk全国総量無料で 660121506 NISMO ニスモ エンジンマウント シルビア S13 S14 S15 SR20DE SR20DET  11220-RS540 トラスト企画 ニッサン www.hotelpr.co.uk
y.tagi 5
もともとクロスロック式のスナップがお気に入りだったのですが、手に入らない時期にこれを使用したところ、非常に使い勝手が良く、夜釣りでもルアーの取り換えが簡単で、強度もこの#0は、ランカーサイズのスズキでも問題ありませんでした。この#0サイズは小物から大物釣りまで汎用性が高くとても信頼して使用させてもらってます。スイベルも簡単に付けることができますよ。

鹿肉 スペアリブ 3kg (1kg×3) (骨付き肉)エゾシカ肉 ジビエ料理 蝦夷鹿 北海道産えぞ鹿 工場直販
eis 4
ゴムグリップに合皮を巻いただけ。デザイン的にはいいんですけど、中のゴム部が隙間から見えるのがなんか嫌。合皮が巻いてあるので、経年のゴムの劣化は気にならないと思う。

サンディングバンド10個 ネイルマシーン ネイルマシン ネイルドリル 爪磨き ネイルオフ セルフネイル 新生活 消耗品
あきよし 5
今まだ適当に量ってたのが、少量の除草剤や殺虫剤を量るのに便利

Amazon | 【2個セット】CASIO対応 NP-80 NP-82 互換 バッテリー ロワジャパン【PSE基準検品】EXILIM EX-Z270 EX-Z1 EX-H60 EX-ZS160 EX-ZS180 | ロワジャパン | カメラ用バッテリーパックAmazon | 【2個セット】CASIO対応 NP-80 NP-82 互換 バッテリー ロワジャパン【PSE基準検品】EXILIM EX-Z270  EX-Z1 EX-H60 EX-ZS160 EX-ZS180 | ロワジャパン | カメラ用バッテリーパック

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

本日はUnity調査枠です。

先日GitHub上で公開されているリポジトリから直接Unityパッケージとして機能をインポートする方法を記述しました。

この際にリポジトリのルートが直接パッケージとして読み込める形になっていない場合として任意のパスのフォルダを指定しする方法を紹介しました。

redhologerbera.hatenablog.com

今回はフォルダではなく任意のブランチを指定する方法を紹介します。

〇任意のブランチをUnityパッケージとして導入する。

GitHubでは複数のブランチでプロジェクトが管理されていることがあります。

例えばMicrosoft MixedRealityToolkit GraphicsToolsではmainブランチのほかにpublic/0.4xなどいろいろなブランチが存在しています。

通常何も指定しない場合先日の方法ではdefalutのブランチ(MRGTではmainブランチ)が指定されます。

今回はここを任意のブランチに変更して使用していきます。

今回はpublic/0.4.xのブランチを使用していきます。

package.jsonに次の一行を追加します。

    "com.microsoft.mrtk.graphicstools.unity": "https://github.com/microsoft/MixedReality-GraphicsTools-Unity.git?path=/com.microsoft.mrtk.graphicstools.unity#public/0.4.x",

前回の階層を指定する方法は?path=/(フォルダ名)でしたが今回のブランチを指定する方法は末尾に#(ブランチ名)をつけることで可能になります。

この方法でブランチを選択してインポートできるようになりました。

本日はUnity調査枠です。

今回はGithubのリポジトリから直接パッケージとしてUnityのプロジェクトに導入していきます。

〇環境

・Unity2021.3.5f1

・GitHub

〇経緯と前提

UnityのパッケージではUnity公式非公式問わずに様々なパッケージを入手、使用することができますが、例えばGitHubでオープンソースで開発されているプロジェクトでリリースとして提供されているバージョンではなく、GitHubの最新のリポジトリをパッケージとして導入したいという場合もあります。

筆者の場合Microsoft MixedRealityGraphicsToolsの開発に参加しているということもありリリース版ではなく最新のGitHubリポジトリの機能を使用したい場合があります。

 そういった場合UnityではGitHubのリポジトリ自体からPackageとしてインポートすることができます。

 この方法が可能な条件としてpackage.jsonが存在しUnityパッケージとして機能する必要があります。

 

①UnityプロジェクトのエクスプローラーからPackages/manifest.jesonを開きます。

dependenciesに次の一文を追加します。

 "dependencies": {
    "com.microsoft.mrtk.graphicstools.unity": "https://github.com/microsoft/MixedReality-GraphicsTools-Unity.git",

この名前はMixedReality-GraphicsToolsのpackage.jsonnameがそれに該当します。

github.com

{
  "name": "com.microsoft.mrtk.graphicstools.unity",
  "version": "0.4.14",
  "displayName": "MRTK Graphics Tools",
  "description": "Graphics tools and components for developing Mixed Reality applications in Unity.",
  "msftFeatureCategory": "MRTK3",
  "unity": "2020.3",
  "author": "Microsoft",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/microsoft/MixedReality-GraphicsTools-Unity"
  },
  "bugs": {
    "url": "https://github.com/microsoft/MixedReality-GraphicsTools-Unity/issues"
  },

urlはリポジトリをクローンする際のHTTPSを指定します。

③URLの末尾に次の行を追加します。

?path=/com.microsoft.mrtk.graphicstools.unity

これはpackage.jsonがリポジトリの直下に存在する場合は必要ないですが、今回のMRGTの場合リポジトリのcom.microsoft.mrtk.graphicstools.unityフォルダにpackage.jsonがあり、一つ下の階層を指定する必要があります。

これを行うためにはHTTPS?path=/(フォルダ名)を使用します。

これによってUnityのプロジェクトを開いた際にパッケージが導入されます。

以上でGitHubリポジトリからUnityパッケージとしてインポートできました。

[1年保証] Premium 低反発 折りたたみ マッサージベッド FIGO (木製)(有孔) ブラック マッサージべッド マッサージ用ベッド 施術べッド 治療ベッド 整体べッド

本日はMRGT調査枠です。

前回に引き続きMixedRealityGraphicsTools StandardShader全機能を解説していきます。

前回はCullModeの実装を見ていきました。

BURTLE バートル 空調服 エアークラフト タクティカルブルゾン AC1151

本日はAlbedoの処理を追っていきます。

〇Albedo

Albedoは最も基本的な設定になります。

ここではテクスチャと色を指定することができます。

プロパティ上は冒頭に記載されている_Color_MainTexで定義されています。

Shader "Graphics Tools/Standard"
{
    Properties
    {
        // Main maps.
        _Color("Color", Color) = (1.0, 1.0, 1.0, 1.0)
        _MainTex("Albedo", 2D) = "white" {}

また実装ではPixelShaderの最初期に処理が行われています。

MRGTShaderのPixelShaderでは最初にテクスチャ関係の処理が行われています。

half4 PixelStage(Varyings input, bool facing : SV_IsFrontFace) : SV_Target
{
  ・・・
#if defined(_TRIPLANAR_MAPPING)
    // Calculate triplanar uvs and apply texture scale and offset values like TRANSFORM_TEX.
    half3 triplanarBlend = pow(abs(input.triplanarNormal), _TriplanarMappingBlendSharpness);
    triplanarBlend /= dot(triplanarBlend, half3(1.0h, 1.0h, 1.0h));
    float2 uvX = input.triplanarPosition.zy * _MainTex_ST.xy + _MainTex_ST.zw;
    float2 uvY = input.triplanarPosition.xz * _MainTex_ST.xy + _MainTex_ST.zw;
    float2 uvZ = input.triplanarPosition.xy * _MainTex_ST.xy + _MainTex_ST.zw;
  ・・・
#endif
// Texturing.
#if defined(_DISABLE_ALBEDO_MAP)
    half4 albedo = half4(1.0h, 1.0h, 1.0h, 1.0h);
#else
#if defined(_TRIPLANAR_MAPPING)
#if defined(_URP)
    half4 albedo = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, uvX) * triplanarBlend.x +
                   SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, uvY) * triplanarBlend.y +
                   SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, uvZ) * triplanarBlend.z;
#else
    half4 albedo = tex2D(_MainTex, uvX) * triplanarBlend.x +
                   tex2D(_MainTex, uvY) * triplanarBlend.y +
                   tex2D(_MainTex, uvZ) * triplanarBlend.z;
#endif
#else
   ・・・
#if defined(_URP)
    half4 albedo = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, input.uv);
#else
    half4 albedo = tex2D(_MainTex, input.uv);
#endif
#endif
#endif
#endif

ここでは機能ごとに分かれていますが基本的な処理は次のようになります。

#if defined(_URP)
    half4 albedo = SAMPLE_TEXTURE2D(_MainTex, sampler_MainTex, input.uv);
#else
    half4 albedo = tex2D(_MainTex, input.uv);
#endif

URPの場合とビルドインの場合で処理が分岐していますが、どちらもサンプリングを行っているだけです。

これらのサンプラーはGraphicsToolsStandardInputで定義されています。

#if defined(_URP)
TEXTURE2D(_MainTex);
SAMPLER(sampler_MainTex);
#endif
#else
sampler2D _MainTex;

URPではSAMPLERが使用できるため最適化されています。

half4 albedoは最終出力へ出力されております。

本日は以上です。

このあたりは基礎的なものですね。

本日はBlenderモデリング枠です。

今回はBlenderでNゴンを表示する方法を紹介します。

〇Nゴンとは?

Nゴンとはメッシュの形状を指す言葉です。

3DCGは様々な拡張子があり、様々な表現が行われていますが、共通して頂点と3つの頂点をもとに構成される面であるメッシュで構成されています。

この三角形のメッシュをポリゴンと呼びます。

しかしBlenderでは3つ以上の頂点をもとにメッシュを作成することができます。

上記の例では32個の頂点で一つのメッシュが形成されています。

このように3つ以上の頂点で構成されるメッシュのことをNゴンと呼んでいます。

 Blenderだけで使用する場合はまだよいのですが、NゴンはBlenderからエクスポートされた場合自動でポリゴンへ変換されます。

 この際にメッシュが破断してしまうことがあります。また一部のアドオンなどではメッシュ形状に依存しているものがあり、Nゴンは許容するかNゴンを作らないように作成するかはモデラーが後先のことを考えて作成する必要があります。

〇Nゴンを検出する

今回はアドオンの関係でNゴンが許容できず修正する必要がありました。

具体的にはHairToolで髪を作成する際に4つの頂点で構成されるメッシュである必要がありました。

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

HairToolを使用するためにはメッシュを四角形にする必要があります。

これは三角面を四角面にを選択して半自動的にメッシュを修正します。

ですが単純に行っては一部に三角形やNゴンが生じます。

この先は手動で修正する必要がありますがここからNゴンの検出を行います。

ここからは特徴で全選択から面の辺数を選択します。

メニューから頂点数を今回発見したいNゴンの数にします。

ここで表示されている面が今回では四角形以外のメッシュになります。

5角形のNゴンを検出したい場合は頂点数を5に設定します。

以上でNゴンを検出できました。

本日はグラフィック調査枠です。

〇RenderDocとは?

RenderDocはオープンソースで開発、提供されている、GPU上で実行されている処理を見ることができるソフトウェアになります。

〇RenderDocを使用してUnityアプリのデバッグを行う。

今回はOculusLinkで接続したPCVR用のアプリケーションのデバッグを行います。

今回はもともとMetaQuest単体で動かすために開発していたソフトウェアを急遽PCVRでアプリケーションを実行したところ、一部のオブジェクトが描画されないという問題が発生しました。

 今回はなぜ描画がされていないのかデバッグを行いました。

 UnityではEditor自体がRenderDocによるデバッグをサポートしているためRenderDocがインストールされているPC環境ではGameウィンドウ、もしくはSceneウィンドウからキャプチャを行うことができました。

 Unityで開発したアプリケーションにはその機能はないため、RenderDoc経由でアプリケーションを起動する必要があります。

〇環境

・Windows 11

・PCVR(Desktop)向けにビルドしたUnityアプリケーション

・RenderDoc

〇手順

①RenderDocを起動します。

前述のとおりデバッグを行うアプリケーションはRenderDoc経由で起動する必要があります。

②Launch Applicationタブを開きます。

Executable Pathの右側アイコンを選択します。

④起動したいUnityアプリのexeファイルを選択します。

⑤Pathが入ったことを確認してLaunchを選択します。

以上でアプリが起動します。

RenderDoc経由で起動した場合左上部にデバッグログが表示されるようになっています。

キャプチャをとるためにはF12キーを選択します。

〇ピクセル単位のデバッグ

今回はあるピクセルにおいてどのような処理が実行されているのかを調べます。

Texture Viewerで任意のピクセルを右クリックします。

これによってPixel Contextにピクセル単位の表示が行われます。

Pixel Context下部のHistoryを選択することでそのピクセルで行われているイベントを見ることができます。

画像の例では4つのイベントが走っていることがわかります。

各イベントをダブルクリックすることでそのイベントへと飛ぶことができます。

Pixel Contextを使用することでそのピクセルで実行されているイベントと描画されるRGBAを見ることができます。

 これによってより描画がおかしい場所などデバッグを行いやすくなっています。

本日は以上です。

ドクターブロナー マジックソープ ユーカリ 946ml (ボディソープ)

本日はMRGT調査枠です。

前回に引き続きMixedRealityGraphicsTools StandardShader全機能を解説していきます。

前回はRenderingModeの実装を見ていきました。

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

今回はCullModeを見ていきます。

〇CullModeとは?

CullModeはカリングを指し、もともと不要なものを取り除くという意味があります。

 Shaderではメッシュの裏面、表面のどちらかを描画するかを指定するパラメータになります。

 CullModeの意味に合わせると『メッシュの表、裏どちらを不要な描画として描画しないか』になります。

デフォルトではBackが指定されており、この状態ではメッシュの裏面が描画されなくなっています。

CullMode=Back

この場合メッシュの表面のみが描画され、Unityプリミティブキューブの場合では近づいたときに見えるキューブの内側は描画されていないことがわかります。

反対にfrontでは面の表面がカリングされ、裏面が描画されます。

CullMode=front

もう一つOffというモードがあります。

これはカリングを無効(=カリングしない)モードでこの場合メッシュの両面が描画されます。

通常の不透明オブジェクトの場合デフォルトのBackで問題なく表示されますが、例えば次の画像の髪のように板ポリゴンで構成されているメッシュの場合見た目が悪くなることがあります。

オフにすることで両面が描画され、ある程度違和感のない見た目が実現できます。

当然Offにすることで描画負荷は上がってしまいますが、MRTKのシェーダーの場合任意に切り替えることもできるので、裏面が見えないようなオブジェクトをポリゴンで再現する場合とCullModeで対応する場合で比較した場合ほとんどの場合はCullModeで両面描画するほうがパフォーマンスもよくなると思うので、便利な機能です。

〇実装

カリングはShaderLab内で次のように定義します。

Cull Off
Cull Front
Cull Back

Graphicstools StandardShaderでは次のように実装されています。

  // Default pass (only pass outside of the editor).
        Pass
        {
            Name "Main"
            ・・・
            Cull[_CullMode]
            ・・・
            HLSLPROGRAM
   ・・・
            ENDHLSL
        }

_CullModeはPropetiesブロックで定義されています。

        [Enum(UnityEngine.Rendering.CullMode)] _CullMode("Cull Mode", Float) = 2                             // "Back"

UnityEngine.Rendering.CullModeはUnityで提供されるEnum型のクラスです。

docs.unity3d.com

冒頭で紹介した通りBack、Front、Offが提供されておりそれぞれ値を渡せるよういなっています。

本日は以上です。

本日はUnityのトラブルシューティング枠です。

本日まで3日ほど筆者は所属している会社の方で展示会に出展しておりました。

スティックタルトFe(ブルーベリー)30g×40個入

今回はPCVR(OculusLink)向けにアプリケーションを開発したのですが、作成したexeファイルをPCで実行する際にセキュリティスキャンが始まり起動できない問題がありましたので今回は解消した方法を残します。

〇問題

冒頭で紹介したようにUnityで出力された.exeファイルを実行時にセキュリティスキャンが行われ、いつまでもアプリが起動しない問題がありました。

この問題を解消するためには一時的にWindowsのセキュリティを解除するウことを行いました。

これを行うためにWindowsの[設定]アプリを開きます。[更新とセキュリティ]を選択します。

[Windoiwsセキュリティ]を選択し[アプリとブラウザーの制御]を選択します。

この設定では実行するアプリやWebブラウザーでのウィルスなどのセキュリティをチェックしています。

今回は筆者自身が作成したアプリケーションであるため一時的にセキュリティを解除しています。

次に[評価ベースの保護設定]を選択します。

最後に[望ましくない可能性のあるアプリをブロック]をオフに設定します。

この設定はデフォルトではオンになっているものです。

この操作によってアプリ起動時のブロックが発生しなくなります。

この状態で[管理者権限で実行]を利用してアプリケーションを起動することでループから抜け出しアプリケーションが起動します。

本日は簡単なトラブルシューティングになりました。

なお、セキュリティの問題からアプリ終了時にはセキュリティによる保護を再度確認し、有効にする必要があります。