Siv3Dメモ

ウィンドウのサイズを設定、リサイズ可能にする

32. シーンとウィンドウ - Siv3D
Siv3D: 創造のための C++ フレームワーク
Window::Resize(1000, 600);

Visual Studioの出力ウィンドウに出力する

Loggerという機能を使います。下記のようにして文字列を出力できます。

int param = 99;
Logger << U"チェック param[" << param << "]";

リソースに追加してあるテキストファイルを読み込む

リソースに追加してあるファイルを読み込むには、Resource()を使います。

TextReader textReader{ Resource(U"sample.txt") };
String sampleText = textReader.readAll();

CSVファイルの読み込み

CSVクラスを使います。

const String csvFilename = U"example.csv";
const CSV csvExample{ Resource(csvFilename) };

変数として持つ場合

CSV csvExample;
csvExample.load( Resource(csvFilename) );

enum

enumを使いたい場合、C++11から導入されているenum classを使うべし!らしい。

Siv3Dのコーディングスタイル-列挙型enum より enum class を使う

enum class AnimalType
{
    Dog,
    Cat,
    Horse,
};

int main()
{
    AnimalType animal = AnimalType::Dog;

    return 0;
}

サンプル

ちょっとしたゲームの流れを作るためのアイディア

<実装サンプル:Siv3Dのタイピングゲームのコードを拡張できるようにしたサンプル実装>

.

文字列の描画(Label的な)

Siv3Dでは、文字列はFont(フォント)クラスで行います。

矩形エリアに自動改行して描画することもできます。

チュートリアル 14 | フォントを使う|Siv3D リファレンス v0.6.10

Siv3D用カラーパレット

Palette::Blackなど、クリックでコピーできるサイト↓

Siv3D Palette Browser

Optional

データがない場合も適切に処理できる仕組み(Nullable)

Optional<String> nullableString = none;
nullableString = "dummy";
if(nullableString.has_value()){
    Logger << U"HAS VALUE! [" + nullableString.value() + U"]";
}
else {
    Logger << U"HAS NOT VALUE.";
}

String, 文字列処理

チュートリアル 05 | 文字列クラス|Siv3D リファレンス v0.6.10
Siv3D-Reference/Programming Guide/Headers/Siv3D/String.hpp at master · Reputeless/Siv3D-Reference
Siv3D Reference. Contribute to Reputeless/Siv3D-Reference development by creating an account on GitHub.

文字列の検索

// str: 検索する文字列 ex. U"x"
// offset: 検索開始オフセット ex. 0
// 返り値: 検索した文字列が最初に現れた位置。見つからなかった場合は String::npos
size_t indexOf(const String& str, size_t offset = 0)

部分文字列の取得

// offset: 範囲の開始位置 ex. 0
// count: 範囲の長さ, String::nposで最後まで ex. 2
// 返り値: 指定した範囲の文字列
String substr(size_t offset = 0, size_t count = npos) const

タイトルとURLをコピーしました