サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
レイングッズ
historia.co.jp
先日のエイプリルフールに NEKO WORKs 様より公開されました「ネコぱらいぶ☆」にて、開発を担当させていただきました。 ネコぱらいぶ☆ 特設ページ http://nekovr.club/ VRモード/非VRモードでの実行ファイルに加え、360度動画としても公開されております。 360度動画は こちら 。 コンテンツの内容に関しては 特設ページ を参照して頂いた方が良いかと思いますが、クオリティアップの為にいくつか技術的な試みを行ったので簡単に紹介させて頂きます。 ネコぱらいぶ☆で検証/実装した内容 ネコぱらいぶ☆は UE4.11 Preview7 で作られています。 本来は製品にPreview版を用いるのは良くないのですが、当初からエンジンを拡張して使用する構想があり、更にワークフローの主軸として検討していた シーケンサー について4.10版と4.11版をソースコードレベルで解析した
2016.03.31UE4UE/ Material [UE4]マテリアル表現の幅が広がる!おもしろいノード&マテリアル関数集 1 UE4のマテリアルエディタでは、膨大な種類のノードやマテリアル関数を手軽に扱うことが出来ますが、 日常的に使うノードは案外限られているのではないでしょうか? というワケで、今回は知って得する(かもしれない)おもしろいノードを幾つか紹介してみたいと思います! Screen Aligned UVs メッシュのUVに関係なく、スクリーン座標のタテを0~1,ヨコを0~1としてUV座標を取得できるノードです。 もちろん、こんな感じに組む事でタイリングを変更する事も可能です。 Texture Cropping 左上と右下のUV座標を指定すると、指定した範囲にテクスチャを縮小して表示する事ができるノードです。 複数のテクスチャを組み合わせればこんな事も。 Vector To
今回は、任意の形状のボリュームやコリジョンなどを作成する方法を紹介したいと思います。 ゲームを作っていく上で、ダメージ床や特定の場所によるカメラの切り替えなど、侵入判定によって様々な挙動を変えたいときがあります。 そういった場合に役に立つのがトリガーボックスですが、それだとボックス型の判定しか取ることができません。ですが、トリガーボリュームを使う事で、ボックス型以外の形状で判定を取る事ができます。 UE4にはBSPブラシを自力で作成する機能があるので、今回はこれを使用します。 まずジオメトリの編集モードに切り替え、ペンを選択します。 次にビューモードをパースペクティブビューからトップビューに切り替えます この際、自動でワイヤーフレームに切り替わるので、作業しやすいようにライティングなどに描画を切り替えます。 これでBSPブラシの作成が可能になります。 この状態で、任意の場所にスペースキーを
2016.03.10UE4UE/ Mobile [UE4] C++プロジェクトをWindowsからiOSのパッケージ作成を行う。 今回は、C++プロジェクトをWindows上からMacを使用してRemoteBuildを行い、iOSのパッケージを作成する方法をご紹介します! C++プロジェクトは基本的にWindowsだけではiOSのパッケージを作成することはできません。なのでMacを使用してパッケージを作成することになりますが、MacではまだUE4は安定して動作しないこともありWindowsで開発を行うことが多いかと思います。 そうした場合に、開発中にiOS端末でチェックをしたいとなった場合に毎回Macにプロジェクトをコピーしてきてパッケージ作成を行うのはとてもめんどくさいです。Windowsからパッケージングできたほうが断然ラクになるのは間違いないですよね。 そこで活躍するのがUE4の標準
こんにちは。初投稿の ほげたつ(@HogeTatu) です。 コンシューマーやiOS/Android、LAMP系のバックエンドを経験してからヒストリアに入社しました。 UE4はHTTP通信周りに関しても既に揃っているようなので、まずはそこの紹介からやっていきたいと思います。 HTTP通信の概要 HTTPとはクライアントとサーバー間で行うための通信プロトコルの一種です。 以下に示すのが基本の流れとなります。 クライアントが起点となり、サーバーにリクエストを送信 サーバーがリクエストを受信 リクエストに従って、適切に処理 クライアントへレスポンスを送信 iOS/Androidのゲームでは、サーバーにハイスコア等のゲームデータを保存したり、サーバー側で集計されたランキングデータを受け取ってゲーム画面に反映したり、様々な用途で使用されています。 レスポンスとして返されるデータのフォーマットとしては
以前、スプラインの移動処理をコンポーネント化する方法をご紹介しましたが、今回はそのスプライン移動の機能を更に充実化させ、キャラクターを移動させる方法の一つをご紹介したいと思います。 ちなみに実装後の動画がこちらになります。 さて、前回までの機能は、移動処理にSetActorLocationAndRotationを使用していたため、キャラクターに使うには色々と問題がありました。例えば、スプラインを地面に添って設置しなければキャラクターが地面に浮いてしまったり、埋もれたりしてしまうからです。接地処理に関しては、キャラクターの足元からレイを飛ばして地面の座標を取得する方法などが考えられますが、毎フレームやるには処理が重いためあまり良い方法でありません。 そこでSetActorLocationAndRotationを使わず、移動処理のみをカスタマイズした新しいスプライン移動用のコンポーネントを作成
こんにちは。エンジニアの原です。 これまでヒストリアでは定期的にブログでUE4に関するTipsをお届けしておりました。 それは今後も変わる予定はありませんが、もう一歩進んだ情報を提供するために TechResearch というチームを結成しました。 TechResearchではブログとは別に、不定期で技術情報をお届け致します。 ブログで書くには少し内容が複雑だったり、量が多いものを紹介していく予定です。 記念すべき第一回の記事は UDP通信 に関してです。 UDPの活用事例 UE4ではネットワーク対応ゲームを作るための機能がとても充実しています。 こちらに関しては中村さんが UNREAL FEST 2015 YOKOHAMA にてご紹介されております。 UE4ではクライアント間での通信プロトコルにはUDPを使用しています。 UDPとは高速転送を行うためのシンプルなプロトコルです。 User
UE4にはレベルを複数に分ける機能があります。 もちろんレベルを分けずに、親レベルであるパーシスタントレベルに全てのアクターを配置することも可能ですが、レベル分けを活用することで、よりゲームを作りやすくすることが可能です。 レベルを分ける レベルを分ける事によるメリットは様々ですが、敢えて挙げるとすれば以下のような内容ではないでしょうか。 マップを切り替える事なく、レベルの状況を切り替える事が出来る (例:アクションゲームを作る際、ステージごとにレベルを分けておくと、ステージクリアした時に次のステージにすぐ切り替えられる) 作業者単位でレベルを分けることで、同時に一つのマップを編集できる (例:RPGなどで背景用のレベルとギミック用のレベルをわけておくと、背景担当とギミック担当で同時に作業をすすめる事ができる) 一時的に配置したいアクターなど、用途によって分けることで管理が楽 (例:デバッ
今回はブループリントのマイナーな(わたくし調べ)ちょっとうれしい機能をいくつかご紹介しようと思います。 クリックのみで変数の型変更! ブループリントの各変数左横にある変数のアイコンを左クリックすると型の変更、 右クリックをすると配列か単体かの変更ができます。 死んだ変数を再利用!「Create Variable」 下のような何らかの関数「FunctionA」のうち一部をコピーして別の関数「FunctionB」にペーストすると 変数が灰色になり、そのままノードを組んでも コンパイル時に「The property associated with Function A Local Var could not be found」と変数が見つからない旨のエラー出てしまい使えません。 ここで変数を左クリックで選択した状態にし、 ノード上で右クリックをすると以下のように「Create variable
今回は、C++でエディタ機能を拡張して「エディタの環境設定」や「プロジェクト設定」ウィンドウ内に、独自の項目を追加する方法をご紹介します。 いきなりですが、ソースコードです。 まずは、設定項目をプロパティとして保持するクラスを用意します。 デフォルト値はコンストラクタで設定しておきましょう。 }; // Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "Settings/EditorSettings.h" #include "MyEditorSetting.generated.h" /** * */ UCLASS(config = Editor/* ※1 */, defaultconfig) c
2015.10.29UE4UE/ Cook [UE4] 4.9におけるパッケージングまとめ ~ProjectLauncher & Console編~ 前回に引き続き、パッケージングについて書いていきます。 今回は ProjectLauncher を使ったパッケージングと、コンソールコマンドからのパッケージングを紹介します。 ProjectLauncher とは ProjectLauncher とは、開発作業やテストを簡素化及び迅速化する「Unreal Frontend」に含まれるツールです。 Unreal Frontend 以下、ProjectLauncher に関する公式ドキュメントからの引用です。 ユーザのゲームをビルド、クック、デプロイ、起動します。UFE はローカルまたはネットワーク上どちらかで接続して、 異なるターゲットプラットフォームで実行される複数のターゲットデバイスへ、同時
以前ブログでHUDからActorの3D座標を利用する方法を書きましたが今回はUMG(※1)で実装してみたいと思います。 HUDでは[Project]というノードで3D座標を2D座標に変換していましたが「Event Receive Draw HUD」の呼び出し中にしか使用出来ないという条件がありました。 今回は他の方法で実装したいと思います。 デザインについては目をつむってもらうとして・・・ このような構成にしてます。 [Overlay]をルートとし、その下にテクスチャを表示するImg_BG(ImageのWidget)と文字表示用のText_Message(TextのWidget)をそれぞれ配置しています。 ここで注意なのですが、ルートのWidgetが[Canvas Panel]を使用した場合はその下のWidgetのAnchorsをサイズに合わせて指定するようなものにするとうまく表示されない
UE4でカーブを扱うにはMatineeやTimelineを使う方法がありますが、Matineeはレベルに依存し、 Timelineは作成したBlueprintに依存します。 今回は、どこからでも参照できるデータとして扱うことのできるCurveアセットについてご紹介していきます。 1.Curveアセットの作成 Content Browserを右クリックして「Miscellaneous/Curve」を選択します。 すると以下の3種のCurveが出てくるので目的に沿ったものをクリックすることで作成完了です。 2.Curveアセットの種類 ・Curve Float Floatの値ひとつのみを編集することができます。横が時間軸、縦が値になっています。 ・Curve Vector X・Y・Zの3つの値を同時に編集することができるCurveアセットです。 Xは赤、Yは緑、Zは青で表示されます。 ・Cur
皆様、アンリアルフェスはお疲れ様でした。 懇親会等で多くの方と交流でき、とても有意義な時間を過ごすことができました。 日に日にUE4の勢いが増していっているので、ヒストリアとしても負けないように良いコンテンツを作っていきたいですね。 さて今回はUE4.9におけるパッケージング方法についてまとめてみました。 UE4におけるパッケージングの仕組みについて UE4ではレベルを起点に、紐付くアセットをかき集めてパッケージングするという方式を取っています。 ちなみにレベルや各アセットに関して、具体的にどのアセットが紐付いているのかを確認したい場合、「アセットを右クリック」→「Asset Actions」→「Migrate」をすることで簡単に確認ができます。 以下は StarterContent に含まれている「Minimal_Default」レベルに紐付くアセットのリストです。 個人制作等の小規模タ
2015.09.17UE4UE/ Animation [UE4] Foot IK で段差がある地形でも自然なアニメーションを実現する ~IKによる補正~ こんにちは。ほげたつ(@HogeTatu)です。 前回に引き続き、Foot IKについて書いていきます。 今回は 立っている場所よりも高い位置に足を着こうとするとめり込んでしまう 問題に対する対応です。 LineTrace用のソケットを追加 LineTraceを用いて足と地面のめり込みを検出するため、スケルタルメッシュにソケットを追加します。 foot_l に対して LeftGroundSocket を追加し、高さが地面すれすれになるようにオフセットを設定する foot_r に対して RightGroundSocket を追加し、高さが地面すれすれになるようにオフセットを設定する 両足のトレース処理を実施して地面までのオフセットを取得 ア
今回は、BluePrintから、キーボードやマウスなどの入力を利用する方法を紹介します。 1.基本的なキーイベントの取得 まずはもっとも単純な、キーが押された時と離された時のイベントを取得します。 UnrealEditorを開いて、↓のメニューからLevel Blueprintを開きます。 「Event Graph」内を右クリックして、アクションリストを開きます。[Input -> Keyboard Events] の中に、キーボードのボタンがずらーっと並んでいます。 この中から、取得したいキーを選択してノードを作成します。今回は「Z」キーを選択します。 「Z」というノードが作られます。 これで、Zキーが押された時に「Pressed」、離された時に「Released」に処理が流れてきます。 それぞれに簡単な文字列表示のノードをつないで、結果を確認してみましょう。 「Play」で実行してビュ
2015.08.07UE4UE/ Plugin [UE4] HistoriaLibraryを公開しました! 社内ライブラリとして開発しているUE4_HistoriaLibraryを公開しました! https://github.com/historia-Inc/UE4_HistoriaLibrary 上記ページから、画面右下の「Download ZIP」ボタンでダウンロード出来ます。 自分のプロジェクトに導入する際には、ZIPを解凍した後、Pluginsフォルダをそのまま自分のプロジェクトフォルダにコピーして下さい。 ビルド済み形式で配布しているのは Windows Develop ビルドのみです。他の構成でのビルドが必要な場合は、ソースコードからビルドして下さい。 このページでは現在HistoriaLibraryにプラグインとして用意されている2つの機能をご紹介します。 ※社内用のツール前
//前略 “FriendlyName”: “My Plugin”, //中略 “Modules”: [ { “Name”: “MyPlugin”, “Type”: “Developer”, “LoadingPhase”: “Default” } ] //後略 6.ソースコード内のクラス名などを置換する 全ての cpp, h, cs ファイルを開き、「BlankPlugin」を「MyPlugin」に置換します。 一括置換でOKです。 これで、ソースコードの準備が整いました。 7.VisualStudioプロジェクトファイルに登録する 次に、VisualStudioプロジェクトに、プラグインのソースコードを追加します。 エクスプローラ上で MyPluginProject.uproject を右クリックして、「Generate Visual Studio Project files」を選択します
今回は、UE4のC++コードをビルドする際に知っておきたい、モジュールの概念と実装方法について説明します。 完全にプログラマ向けですし、簡単なゲームを作るだけであれば知らなくても動かせる内容ではありますが、UE4をしっかりと使いこなすためには、把握しておいた方がよい内容です。 1.モジュールとは UE4のC++コードは、「モジュール」と呼ばれる単位で、「UnrealBuildTool」を通してビルドされます。 この時「モジュール」毎に、Windowsではdllファイル、Macではdylibファイルが作られます。 これは、エンジン内部のコードでも、プラグインでも、ゲームプロジェクトでも共通です。 ゲームプロジェクトもプラグインも、それぞれが複数のモジュールを含むことが出来ます。 また、ビルド構成によってロードするモジュールを切り替えることが出来るため、エディタ専用のモジュールや開発用ビルド専
UE4に少し慣れてきたプログラマの方に、 「C++でもBlueprintでも実装可能だけれど、どちらを使えばよいのか?」 「何を基準にして、どのように使い分ければよいのか?」 という質問を頂くことが多いです。 今回は、自分がゲームを制作する際の、C++とBPの切り分け方法について書いてみたいと思います。 ゲームプログラムの設計は、プロジェクトの状況やチームメンバーの構成、既存のアセット、ゲーム仕様の要求や使用するミドルウェアによっても大きく影響を受けます。 この記事は、あくまで個人的な考え方であり、参考にして頂けても、絶対的なものではありませんのでご了承下さい。 サテ、まず一番基本的な方針としては、「BPで実現可能なものはBPで実装する」です。 やはり、トライ&エラーの早さ、修正の手軽さの面で、BPの方が素早い開発が行い易いです。 BPの機能はかなりリッチなので、使いこなせば、通常のゲーム
2015.05.14タイトル情報 アーティストが1人で1ヶ月間でゲーム1本作ってみた ~ダンジョン&バーグラー制作記 1~ 「1ヶ月スケジュール空けるから、1人でモバイルゲーム作ってみない?」 そんな社長のムチャぶりに無謀にも飛びついた私は、本当に1人で1ヶ月でゲームを作る事になりました。 そんな私の業種は「テクニカルアーティスト」。 2D・3Dグラフィック実装・エフェクト・ブループリント・レベルデザイン等々なんでもやりますが、 基本的にはグラフィックアーティストなので、ちゃんとしたゲームを1人で作った経験なんて当然ありません。 とにかく人ナシ、経験ナシ、時間ナシなプロジェクトですので、無計画に作り始めては絶対に完成しない! と、いうことで、下記の3つのポイントを意識して制作をスタートさせました。 ①用意できるアセットから逆算してゲームデザインする ⇒まずはリソースありき! ②プロトタイプ
2014.06.20UE4UE/ Debug [UE4] コリジョンのデバッグ―Collision Analyzerを使おう! UE4にはコリジョンの判定のデバッグ機能がいくつか備わっています。今回はいくつかあたり判定のデバッグをする時に有用なテクニックをご紹介します。 BlueprintのTrace系のデバッグ BlueprintのTrace系命令(Single Line Trace for Objectとか)はあたり判定を取る時に非常に便利な機能です。そして、デバッグもとても簡単にできます。 その方法が、こちらになります。 DrawDebugTypeをNone以外にする。それだけ! すると、Viewport上にデバッグ用の線が画面上に表示されます。 ↓当たってない状態 ↓当たった状態 Collision Analyzerを利用したデバッグ コリジョンを持ったActor同士のあたり判定を
今回は、UE4の各シーンに最初から置かれている天球「BP_SkySphere」の設定方法についてご紹介します。 この天球、最初から置いてあるのであまり気にしないですが、なにげに高機能です。 昼夜、雲の動き、星の明るさ等、設定を変更すればかなり多彩な空模様が表現可能になっています。 新規にプロジェクトを作った際やサンプルプロジェクトを開いた際に、SceneOutliner を探すと「BP_SkySphere」というActorを見つけられると思います。 今回は、このActorに注目しながら読み進めて下さい。 1.時間帯 BP_SkySphereを選択し、Detailsウィンドウから「Default -> Light Source」の項目を探して下さい。 最初から置かれている天球の場合は、既にココに別のActorの名前が設定されていると思います。 ココに設定されたLight Sourceが、太陽
今回はBlueprint上で使えるRotator系のノード一覧と使い方をまとめてみました。 表の内容は全てバージョン4.24にて検証しています。 公式ドキュメント Unreal Engine 4 Documentation Rotator
RECRUIT採用情報 一人一人の個性を活かした開発で、 ものづくりの面白さを突き詰める ことのできる仲間を募集しています! ヒストリアでは共に成長していけるメンバーを大募集中です。 職種にとらわれない幅広い開発がしたい方のご応募お待ちしております。
以前、「SplineComponent」を使用して、動く足場の作り方を紹介しました。 今回はそれを応用し、UE4.7から実装されたコンポーネントのブループリントを作成できる機能を使用し、スプライン移動用のコンポーネントの作り方をご紹介します。 コンポーネントにするメリット 以前は、レベルに配置するスプラインのアクター「MySplineActor」と、それを参照して移動するアクター「Scaffold」の2種類を作成しました。 しかしこの方法では、移動するアクターを作るたびにスプライン移動する機能を基底クラスに持つ必要がありました。 そこでUE4.7の新機能であるコンポーネントのブループリント化を利用すれば、簡単にアクターをスプライン移動させることが出来るようになる他、既にレベル上に配置した特定のアクターに対しても簡単にスプライン移動させる事ができるようになります。 MySplineActor
UE4はEpic Gamesさんのサンプルアセットは自分のゲームに使い放題!ということで、サンプルプロジェクトからアセットを移動するときによく使うMigrateという操作をご紹介します。 1.移動元プロジェクトでMigrateを行う 移動元のプロジェクトを開き、Content Browserから右クリック→Asset Actions→Migrateを押します。 ※フォルダごとも可! そのアセットが依存するデータの一覧が表示されます。これがすべてコピーされます。 2.移動先プロジェクトのContentフォルダを指定する 移動先のフォルダを尋ねられるので、移動先のContentフォルダを指定します。 3.移動先プロジェクトで確認 操作は簡単、たったこれだけで新しいプロジェクトにコピーされています。 移動元プロジェクトのフォルダ構造を引き継いでしまうのが難点ですが、この機能によりほんの1分くらい
GDC2015 で、Unreal Engine 4 の無料化が発表されました! 以前ご紹介したサブスクリプション版の導入手順から変更された箇所も多いため、 2018年8月現在の最新バージョンでの導入手順を、改めてご紹介したいと思います。 1.Unreal Engine のユーザー登録を行う まずは、下記のページにアクセスして、ユーザー登録を行います。 https://www.unrealengine.com/ ページが英語で表示されている場合は、1. のように、ページ右上の地球のアイコンから言語を切り替えることが出来ます。 言語を切り替えたら、2.「ダウンロード」をクリックして、登録を開始します。 → 名前とメールアドレス、パスワードを設定し、サービス規約を確認して「サインアップ」を押します。 次の画面で「ダウンロード」を実行すると、「EPIC GAMES LAUNCHER」のインストーラ
みなさん、こんにちは!クボッチです。 今回は、TimeLineノードでCurveアセットを使う方法についてご紹介致します! TimeLineのTrackだけ修正したい、けど……他の人がBlueprintを触ってるといった状態に、分業ができるためとても便利です!! ▼Curveアセットに関してはコチラの記事「[UE4]色々な所で使えるCurveアセットの使い方」をご覧ください。 まず、作成したCurveアセットをTimeLineノードに登録します。 ①TimeLineノードに登録したいCurveアセットを選択。 ②選択した状態でこちらのボタンを押す。 これで、登録の方は完了です。簡単ですね! 登録したCurveアセットを編集するには、Curveアセットを直接開き、編集します。 ぜひ、お試しくださいー! [使用例] のびるねこちゃんを、のびのびしてみました。
次のページ
このページを最初にブックマークしてみませんか?
『historia Inc - 株式会社ヒストリア』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く