めも」タグアーカイブ

CRYENGINEの現状と今後

CRYENGINEの現在の状況のまとめ
2022年04月15日 時点
過去の情報は「CRYENGINEの歴史」を見てください。

情報源は、主にCRYENGINEのロードマップ、公式サイト、ForumでのCrytekスタッフの回答などです。

CRYENGINE全般

現在CRYENGINE V はLTS(Long Term Support)に移行しています。今後、CRYENGINE Vには機能追加はありません。現在、Crytekは次世代のCRYENGINEを開発です。

2019年8月29日にリリースされた5.6から、2年以上もエンジンの更新がないためCRYENGINEは現在、競合に比べて大きく遅れを取っており、時代遅れの状態です。メジャーバージョンのパブリックリリースの見通しは立っていません。

言語は英語

CRYENGINEのロードマップ
https://www.cryengine.com/roadmap
5.6は2019年8月29日にリリースされ、日本時間 2022年04月06日にCRYENGINE V 最後となるバージョンCRYENGINE 5.7 LTSがリリースされました。

当初、5.7が2020年の春に発表の予定でしたがCOVID-19のため発表は無くなり、2020年はメジャーリリースの予定は無しになりました。(当時、欧州はCOVID-19のパンデミックでロックダウン中だった)

Crytekは2020年、2021年はCRYENGINEに関する情報をほとんど発信していませんでしたが、これはCOVID-19による混乱と次世代のCRYENGINEを作ることに集中していたためと当初発表されました。

Crytekは、中規模の企業でありテクノロジー企業であると同時に、ゲーム開発スタジオでもあります。そのため、ユーザーの少ないCRYENGINEの開発計画を先に進めるよりも、Crytekの代表的なIPである『Crysis』フランチャイズや最新IP「Hunt: Showdown」への投資、ゲーム開発のサポートを優先するという決断をしたと後に発表がありました。結果CRYENGINEは2年間の間、最新バージョンが公開されませんでした。

公開されていないだけで、Crytek内部では5.7相当のCRYENGINEは出来ているようです。「Crysis Remastered」は5.7です。多分

CRYENGINEとゲーム開発チームの両方をサポートするために、今後数年間でスタジオの人員を大幅に増加させる計画を持っているそうです。しかし、最初に、目標を達成するためには、エンジンのアーキテクチャと社内の構造を変更する必要があると判断しているそうです。

CRYENGINE Vのライフサイクルを締めくくるリリースが2021年に1つ予定されていましたが、CRYENGINE 5.7は、「COVID-19により働き方が変わり、開発の優先順位を調整しなければならなかったため、設定した開発目標を達成することができませんでした」と発表があり無しになりました。

CRYENGINE 5.7 Roadmap Update and Future Plansから製品責任者であるArto Ruotsalainenの説明の意訳

設定された野心的な目標の実現に集中するために計画を変更する必要があり、これはCRYENGINEの次のメジャーバージョンのパブリックリリースが遅れることを意味します。

最終的には、ゲーム制作チームで行ったエンジンの進歩を統合し、すべてのライセンシーとコミュニティのためにCRYENGINEを再構築、革新、強化するため時間が必要です。遅延は、多くの人が聞きたいことではないことを私たちは知っています。

しかし、すべての人の長期的な利益のために、私たちはそれが正しいものであると信じています。また、次のパブリックリリースのタイムラインがないからといって、現在のCRYENGINEライセンシーやアクティブなコミュニティメンバーとの協力を継続しないということではありませんのでご安心ください。メジャーバージョンのパブリックリリースの見通しが立たないままどのように作業を継続するかについては、現在計画を策定中ですので、来年中のアップデートにご期待ください。

その後、2022年に次世代のCRYENGINEリリース。

https://www.cryengine.com/news/view/cryengine-5-7-roadmap-update-and-future-plans

https://www.cryengine.com/news/view/cryengine-staff-spotlight-meet-the-team-arto-ruotsalainen

2020年は5.6のホットフィックスを暫定的に提供し、2022年に5.7をリリースしLTS(Long Term Support)に移行しました。

5.4までは使用料は無しでしたが 5.5以降(Ver5.0~5.4も含め)年間の総収入USD 5,000以上のプロジェクトごとに5%の使用料が発生することになりました。

CRYENGINE Vマニュアルは、まだ未完成。分からないことはforumで聞く。

サンプルプロジェクトのGameSDKはCrysis2のアセット、システムが元になっているので古い。

ロードマップを見ると5.7で大きな進化、改善がされる予定。だったが、2021年のメジャーリリースに期待。

続きを読む

CRYENGINE V Character Tool 使い方

Character Toolの主な役目は、プレイヤーなどのキャラクターの定義(メッシュ、Skeleton、アニメーションの関連付け)をすることです。BlendSpaceでアニメーションをBlendする際にも使います。

キャラクターの定義に必要なファイル

.cdfに必要なファイル

  1. .chr(キャラクターのSkeletonデータなど含む)
  2. .skin (キャラクターのメッシュ)
  3. .chrparams(キャラクターパラメータファイル)

.cdf(キャラクターの定義)
XMLファイル構造
キャラクター定義ファイルは、Sandbox内のCharacter Toolで作成します。
.cdfには、.chrファイル、.skinファイルとその他の添付ファイルの参照が含まれています。

.chr(キャラクターのSkeletonデータなど含む)
character
.chrファイルは3Dモデリングソフトで作成され、アニメーション、ラグドールシミュレーションに使用されるSkeleton、ヒット検出の物理プロキシを含んでいます。

.skin (キャラクターのメッシュ)
.skinファイルは3Dモデリングソフトで作成され、Characterの メッシュデータが含まれています。
メッシュ、頂点重み付け、頂点色など含んでいます。

The .skin file is created in the 3D application and contains skinned character data. It can be any asset that is animated with bone-weighted vertices like humans, aliens, ropes, lamps, heads, and parachutes. The .skin file includes the mesh, vertex weighting, vertex colors, and morph targets.

.chrparams(キャラクターパラメータファイル)
XMLファイル構造
http://docs.cryengine.com/display/SDKDOC2/Mapping+Animation+Assets

CryEngineは、定義しない限り、どのアニメーション(.caf)がどのSkeleton(.chr)に属しているかを認識できないため.chrparamsファイルにキャラクターのSkeletonに対応したアニメーションのリストなどを定義する必要があります。

これらの定義は、LOD、IK、およびアニメーションリストの3つのグループに分類されます。

.chrparamsファイルは、参照するキャラクター(.cdf)のファイルと同じ名前を持っています。

*(アスタリスク)使用可能
.chrparamsファイルは、手動で作成

<AnimationList>
<Animation name="$AnimEventDatabase" path="characters/ambient_life/bear/bear_baby.animevents"/>
<Animation name="#filepath" path="characters/ambient_life/bear/animations"/>
<Animation name="*" path="*/*.caf"/>
<Animation name="*" path="*/*.bspace"/>
<Animation name="*" path="*/*.comb"/>
</Animation>

Skeletonの登録

Skeletonを登録してから、メッシュ、添付ファイルを追加する。Skeletonを登録するには、Character ToolからCompression (Animations)のSkeleton Listをクリック

AliasesのAdd。Skeletonを登録する。

数字の上辺りで右クリックで削除など出来る。

キャラクター定義ファイル(.cdf)を作成

キャラクター定義ファイル(.cdf)のProperties

Skeletonに.chr(キャラクターのSkeleton)、Geometryに.skin (キャラクターのメッシュ)を指定

スケルトンの表示方法

.chrparams
http://docs.cryengine.com/display/SDKDOC2/Mapping+Animation+Assets

キャラクターのベースアニメーションフォルダの設定

キャラクターのアニメーションを探す場所をエンジンに伝えるために、.chrparamsファイルの最初の行はキャラクターのアニメーションフォルダを設定します。

キャラクターのアニメーションはすべて、設定したフォルダ内またはそのサブフォルダ内に置きます。通常、このフォルダはGame/Animationsフォルダ内に配置します。

ワイルドカードマッピング

各アニメーションを1行ずつ追加すると、非常に大きな.chrparamsファイルが作成され、セットアップに時間がかかることがあります。

アニメーション名とファイル名が異なる場合にのみ各アニメーションを1行ずつ追加が必要です。これが当てはまらない場合、アスタリスク*を使用したワイルドカードマッピング使用します。

制作中は「test」フォルダをワイルドカードマッピングすることで、アニメーターにとって大幅にワークフローが改善される可能性があります。新しくエクスポートされたアセットをこのフォルダに配置し、.chrparamsファイルを変更することなく、すぐにCharacter Toolでテストすることができます。

未完成↓

複数のキャラクター間のアセットの共有

アニメーションイベントデータベースの設定
.animsettings
足跡や足音、パーティクルエフェクトなどのイベント
キャラクターエディタで設定できます。

 

BlendSpace
.bspace
グリッド状に組み立てられたアニメーションのコレクションで、アニメーションのブレンドを可能にします。

comb – 方向を結合するためのbspaceファイルの組み合わせ(例:moveTurn_left.bspace)

 

http://docs.cryengine.com/display/CEMANUAL/4+-+Assembling+Attachments

http://docs.cryengine.com/pages/viewpage.action?pageId=26870214

http://docs.cryengine.com/pages/viewpage.action?pageId=27594502

 

CRYENGINE V Schematycスニペット

よく使うSchematycの設定とノード

スポーンポイントの設定

スポーンさせたい場所に「Empty Entity」を置く。「Empty Entity」のNameは「SpawnPoint」など分かりやすい名前にする。

SchematycのEntityを以下の画像のようにする。

“スポーンさせたいEntity”のFind By NameノードのNameにはスポーンさせたい場所に置いたEntityのNameを設定する。

Find By NameノードはGet系ノードに繋げることで指定したNameのEntityの値を取得出来る。Get Entityノードは、このSchematyc Entity自身を取得。

Entityを回転させる方法

https://answers.cryengine.com/questions/5939/how-to-rotate-entity-with-schematyc.html

マウスでEntityを回転させる 未完成

SchematycにComponentsのInput、Meshを追加。

Construction Graphの設定
Construction Graphを以下の画像のようにノードを設定する。

input idはXとY
NameはSignal Graphで参照するので後で分かる名前にする。

Variables(変数)の設定
TypeはFloatに設定
名前はSignal Graphで参照するので後で分かる名前にする。

Signal Graphの設定

以下の画像のようにノードを設定する。

説明

On Action Changed

Action Name
キー、マウスなどでボタンが押されるなどすると「Action Name」からConstruction Graphで設定した「input id」名が出力される。

Value
Valueからはキーなら0か1、マウスなどは、上下左右 -1、1 それぞれ対応している。(うまく説明できない)
マウスなどは他にも素早く入力すると-100とか数値が大きくなる。

Switch
TypeをStringに設定。CasesからValueを追加。

On Action ChangedのAction Nameから出力された「input id」名を受け取り、一致したValueがあればそのValueに進む

Schematycのデバック

SchematycエディターのLogにコメントやエラーなどデバッグ情報を書き込む。

デバッグ情報を画面に描画する

ComponentにDebug Drawを追加する。「Draw2DText」ノードなどで画面に情報を描画。
Int、Vector3などの値は「ToString」ノードで文字に変換してから「Draw2DText」ノードのTxetポートに繋げる。

 未完成 Entity間のデータの受け渡し方法

データの受け渡しには2つの「Schematyc Entity」と1つの「Schematyc Library」が必要

  1. 情報を送る「Send」 Schematyc Entity
  2. 受け渡しの中継地点「Library」 Schematyc Library
  3. 情報を受け取る「Receives」 Schematyc Entity

まず、受け渡しの中継地点「Library」にFloatなどでdamage変数を設定する。

次に、「Send」Entityで情報を「Library」Entityに送る

送り方
「Send」EntityのSignalGraph内のSignal > Receiveに「Library」Entityで設定したノードがあるので選択し設定。これで、「Library」Entityのdamage変数に送られる。

受け取り方
受け取るには、「Receives」EntityのSignalGraph内のSignal > Send内の「Library」Entityで設定したノードがあるので選択。これを、「Receives」Entity内のHP変数などに送る。

  • Schematyc Library データのみの情報でエディターで配置できない。他のSchematycから参照される情報が入っている。Entity間のデータの受け渡しに使える。
  • Schematyc Entity オブジェクトなどのエディターで配置できる情報。

ExpandとCreateノードの使い方の例

作成
Create

UE4のMake RotationなどMake系に相当

展開
Expand

UE4のBreak RotationなどBreak系に相当

「GetEntityId」と「GetTransform」ノードで自分の位置、回転、Scaleを取得し、「Expand」ノードで位置、回転、Scaleのポートに分解、「Add」ノードなどで足し引きなどをして「Create」ノードで位置、回転、ScaleをTransformにまとめる。まとめたら、「SetTransform」ノードなどに繋げる。

function > Standard > によく使われるノードがある。

Entityでよく使われるノード例
SetPosition
SetRotation
SetTransform

TransformはEntityの位置、回転、Scaleが含まれている。
PositionはEntityのワールド空間の位置を指す。

「Humble CRYENGINE Bundle 2018」の内容解説

ダウンロード販売サイト「Humble Bundle」で2018年05月02日~2018年05月16日(日本時間)の2週間「支払いたい分だけ支払う」方式で販売されていた。

追記: 現在は販売されていませんがAssetについては一部を除きCRYENGINE Marketplaceで無料で配布されています。

Humble Bundle」は販売で得られた収益をゲーム制作者だけでなく複数のチャリティー団体に寄付も出来る販売サイトです。

続きを読む

CRYENGINE V 作成したゲームの配布に必要なファイル

CRYENGINE V 作成したゲームの配布に必要な最低限のファイル

CRYENGINE 5.4以降から、ゲームの配布に必要なファイルは.cryprojectファイルの右クリックメニューから Package Build で集まります。
続きを読む

ネットショップなどのメルマガ配信停止アドレス一覧

 

ネットショップなどのメルマガ配信停止のアドレス一覧です。

  • ダイレクトメール (郵送物)
  • メルマガ (電子メール)

楽天

楽天ショップのメルマガ一覧 ~登録済みのショップがお届けするメルマガ一覧~
配信停止
https://emagazine.rakuten.co.jp/ns?f=member&act=chg_rmail

楽天のダイレクトメール 登録・停止
https://dm.rakuten.co.jp/

楽天ヘルプ | 楽天のメルマガをすべて停止したい
http://ichiba.faq.rakuten.co.jp/app/answers/detail/a_id/14569/kw/ダイレクトメール/related/1

楽天ヘルプ | 楽天の郵送物(ダイレクトメール/試供品)を停止したい
http://ichiba.faq.rakuten.co.jp/app/answers/detail/a_id/27770/kw/ダイレクトメール

CRYENGINE V ビルド

CRYENGINE 5.3 から、ビルドシステムがWAFからCMakeに変更になりました。

CMakeでCRYENGINE Vをビルド

https://docs.cryengine.com/display/CEPROG/CMake

CRYENGINE V をビルドするにはVisual Studioが必要です。

CRYENGINE 5.1.0からGitHubでコードをダウンロード出来るようになりました。
CRYENGINE V のビルド方法はよく変わるのでこの通りにしてもビルドできない場合があります。

最新のビルド方法はマニュアルから確認してください
https://docs.cryengine.com/display/CEPROG/CRYENGINE+Build+System

 

続きを読む

CRYENGINE V Assetフ ァイルの暗号化

Assetファイルの入ったPAKファイルをEncryptすることで解凍ソフトなどで、開くことができない状態にできます。

Signingすることで解凍ソフトなどで、内容は見ることはでき、内容を変更することができない状態にもできます。 続きを読む