Indexed.png (400 × 400 ピクセル、ファイルサイズ: 4キロバイト、MIME タイプ: image/png)
Indexed.png (400 × 400 ピクセル、ファイルサイズ: 4キロバイト、MIME タイプ: image/png)
Vertex.png (400 × 400 ピクセル、ファイルサイズ: 5キロバイト、MIME タイプ: image/png)
頂点バッファ(英語:vertex buffer)とは、主に3DCGで使われる用語で、頂点の配列を意味する。基本は3つの頂点による三角形、いわゆるポリゴンである。 たとえば四角形を表すには2個の三角形(計6個の頂点)を用いる。 上記の例では頂点にはXYZ座標しか持っていないように見えるが、MonoGameなどではXYZ座標の他に頂点カラーやテクスチャ座標、法線などの様々なデータを保持している。それらが何千、何万と集まると結構なデータサイズになるため、無駄を省く手段として「インデックスバッファ」という手法が用いられることも多い。 頂点バッファはGPUに直結するVRAMに確保すると非常に高速に処理される。最近では1フレームごとに転送するのではなく、起動時一発メインメモリからVRAMに転送したら、あとはバーテックスシェーダーで何でもかんでもやるという技法がよく使われているようだ。 関連項目[編集
実装例[編集 | ソースを編集] この例ではVertexBufferを作らずにDrawUserPrimitivesメソッドで描画している。 VertexBufferを作りDrawPrimitivesメソッドで描画しても同じ結果になる。 どちらも頂点バッファだけでの描画なのでどちらが優れているかは知らん。可能であればインデックスバッファを使った描画の方が良いと思うぞ。 BasicEffectのVertexColorEnabledプロパティで色付けを有効にしている。これを設定しないと真っ白になり、設定すると頂点カラー間でグラデーションが掛かる。 using System; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; name
___, - 、 /_____) . | | / ヽ || 「パパな、HIPHOPで食っていこうと思うんだ。」 |_| ┃ ┃ || (/ ⊂⊃ ヽ) /  ̄ ̄ ̄ \ ! \_/ ! ( ( (ヽ ヽ ,\ _____ /、 | -、ヽ\ ! ゝ/  ̄ ̄ ̄ \ /. \/ ̄\/ .\ | |─ |__ / / _____ヽ | | _┌l⊂⊃l | | ┌ - ′ ) / | | / ─ 、-、! | | / ∋ |__| | | ヽ / ヽ < |__|─ | | | | /`, ──── 、 | | ` ─┐ 丨 ̄ ( ` ─ o-i ヽ /
r ‐、 | ○ | r‐‐、 _,;ト - イ、 ∧l☆│∧ 良い子の諸君! (⌒` ⌒ヽ /,、,,ト.-イ/,、 l |ヽ ~~⌒γ ⌒ ) r'⌒ `!´ `⌒) 「やればできる」 │ ヽー―'^ー-' ( ⌒γ ⌒~~ / 実にいい言葉だな。 │ 〉 |│ |`ー^ー― r' | │ /───| | |/ | l ト、 | 我々に避妊の大切さを教えてくれる | irー-、 ー ,} | / i | / `X´ ヽ / 入 |
GraphicsProfile列挙体は、MonoGameで使用するグラフィック機能を、完全に使い切るか、制限するかを設定するのに使用する列挙体である。 グラフィック機能を制限することでマイナーなプラットフォームにも対応するらしい。 もともとはXNA時代に「Windows Phone対応」を含めるか含めないかの設定に使用したものらしく、MonoGameで意味をなしているのかは不明。
Microsoft.Xna.Framework.Input.Touch名前空間には、主にスマートフォンのタッチパネル操作を扱うクラスなどがある。XNA時代にはスマートフォンがなかったためMonoGameで追加されたものとなる。
MonoGame/クラスライブラリ/Microsoft.Xna.Framework.Input名前空間 提供: MonoBook < MonoGame | クラスライブラリ ナビゲーションに移動 検索に移動 Microsoft.Xna.Framework.Input名前空間にあるもの。 目次 1 クラス 2 インターフェイス 3 構造体 4 列挙体 クラス[編集 | ソースを編集] 名称 概要 GamePadクラス ゲームパッド。 Joystickクラス ジョイスティック。ゲームパッドと違い十字キー数やボタン数、軸数に制限がない。 Keyboardクラス キーボード。 KeyboardUtilクラス Mouseクラス マウス。 MouseCursorクラス マウスカーソル。 インターフェイス[編集 | ソースを編集] なし。 構造体[編集 | ソースを編集] 名称 概要 GamePadB
xnbファイルの読み込みに失敗したときに発生する例外。これが発生する場合はだいたいコンテンツ名(ファイル名)が間違ってる。
エミッター(音の発信源)を表す。3Dオーディオの音響計算で使う。AudioListenerクラスと共に使用される。
コンテンツパイプライン外のファイルを開くのに使う。スマホゲームでよくある起動時にダウンロードした追加素材などを開いたりするのに便利だが、地味に制約も多いのでオープンソースの強みを活かしてこのクラス風の自前実装を作ったほうが捗る。
MonoGameのライブラリ内の名前空間のリスト。バージョンアップごとに増えたり減ったりしているので公式サイトを見たほうがいいぞ。 名前空間[編集 | ソースを編集] 名称 概要 Microsoft.Xna.Framework名前空間
NSImageをサクッと回転させたい。 動くことは動いたが負荷を計測したところ微妙に重いようなので次回はCGImageを回転させてみようと思う。 using System; using AppKit; using Foundation; using CoreGraphics; public static class NSImageExtensions { public static NSImage Rotate(this NSImage nsImage, float degrees) { degrees = degrees % 360f; if (degrees == 0f) {// 回転の必要なし return nsImage; } CGSize size = nsImage.Size; CGSize maxSize; if (90f == degrees || 270f == degr
stackoverflowで見つけたのだがブラウザ閉じてしまってURLが分からなくなった。 DateTimeからユリウス通日(double型)を生成する。 public static class DateTimeExtensions { static readonly double JulianValue = 2415018.5; static readonly double ModifiedJulianValue = 2400000.5; public static double ToJulianDate(this DateTime date) { return date.ToOADate() + JulianValue; } public static double ToModifiedJulianDate(this DateTime date) { return date.ToOAD
ユリウス通日(読み:ゆりうすつうじつ、英語:Julian Date、略称:JD)とは、グリニッジにおける紀元前4713年1月1日12時0分0秒(正午)を起算日とする日付の表し方(通称:暦、カレンダー)である。 例えば、2024年6月23日13:10(JST)のユリウス通日を計算すると、2460485.048912になる。 概要[編集 | ソースを編集] ユリウス通日は主に国際天文学連合が日付を表すのに用いている数字で、天文学や考古学などで使われている暦である。 ユリウス通日の起算日である紀元前4713年1月1日12時0分0秒はユリウス日(Julian Day)という。 ユリウス通日は日付(年月日)の表し方であり、時刻(時分秒)は考慮されていない。 強引に時刻を表現する場合は実数を用いる。 遥か昔、リソースの乏しいコンピューターでユリウス通日を利用するにはあまりに桁が大きすぎるという理由で、
public static class NSDateExtensions { static readonly DateTime reference = new DateTime(2001, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); public static DateTime ToDateTime(this NSDate date) { var utcDateTime = reference.AddSeconds(date.SecondsSinceReferenceDate); var dateTime = utcDateTime.ToLocalTime(); return dateTime; } public static NSDate ToNSDate(this DateTime datetime) { var utcDateTime = datetim
NSDateクラスとは、名前のとおり日付を保持するクラスである。 名前空間: Foundation 継承元 : NSObject 概要[編集 | ソースを編集] NSDateオブジェクトは、特定のカレンダーシステムやタイムゾーンに依存することなく、特定の日時をカプセル化して保持する。NSDateオブジェクトは不変(インスタンス生成時で指定した日時から変更不可)であり、絶対参照日付(2001年1月1日00:00:00 UTC)に対する不変時間間隔で表される。 NSDateクラスは、日時の比較、2つの日時間の時間間隔の計算、および別の日時に対する時間間隔からの新しい日付の作成方法を提供する。 NSDateオブジェクトは、DateFormatterオブジェクトと一緒に使用して日付と時刻のローカライズされた表現を作成するほか、NSCalendarオブジェクトを使用してカレンダーの算術演算を実行する
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く