約 4,114,730 件
https://w.atwiki.jp/endlesswiki/pages/73.html
AND ENDLESS winter edition2007 CLASSICS1 GOOD-BYE JOURNEY / THE RUN HIDE SEEK SECOND CHILDREN / THE CRUISING GENTLEMEN 2007.11.22~12.9 東京芸術劇場小ホール1 【キャスト】 「GOOD-BYE JOURNEY」 ジャンヌ:高梨臨 ジルドレ:西田大輔 オリヴィエ:田中良子 ジャン:村田洋二郎 アラン:杉山健一 リング:伊藤寛司 ロベール:加藤靖久 ミザリ:佐久間祐人 サイリアス:宮本京佳 イリア:大森裕子 ニーナ:朝倉萌菜美 ポーラ:笹原綾 ラ・イール:一内侑 ラングレン:宇佐美雅司 パサド:村田雅和 シャルル:榊陽介 「THE RUN HIDE SEEK」 友 竹:村田雅和 菱 川:和泉宗兵 彩 恵:田中良子 狩野探幽:加藤靖久 狩野千代:宇田川美樹 幸之助:伊藤寛司 堀内梅山:岩崎大輔 古 蘭:戸田佳世子 椿 :福田真夕 佐 吉:大畑真彦 玉 乃:藤臣香乃 美 鈴:田中美樹 乙 子:大橋祐子 雪 彌:安藤繭子 省吾郎:竹内諒太 「SECOND CHILDREN」 源 内:三角大 玄 白:佐久間祐人 泡 音:大竹えり 椛 :福壽鈴美 兎 杏:中川えりか 山海丸:加藤靖久 甲斐彦:永島真之介 空 樹:宮本京佳 麓 郎:村田雅和 奏 雪:福田真夕 「THE CRUISING GENTLEMEN」 ヴィクター:村田雅和 ネックス:塚本拓弥 クリフ:八巻正明 ユアン:西田大輔 シャーリーン:笹原綾 バート:佐久間祐人 ユ リ:戸田佳世子 カーライル:岩崎大輔 フィリア:中川えりか 執 事:村田洋二郎 コレット:今泉祥子 アシュリー:田中良子 【アンサンブル】 石井寛人、田中雄一、寺島八雲、永島真之介、平野雅史、村瀬啓佑、森山健司、渡部和博、一ノ瀬和美、大橋祐子、遠藤美穂、今野久美、田中美樹、武捨祐里、野村道絵、林真由美、藤臣香乃、村上智子、渡邉朝美 【あらすじ】 「GOOD-BYE JOURNEY」 1429年、戦乱で揺れるフランスに突如現れた救世主ジャンヌ・ダルク。 期待を募らせる民衆の前に現れたのは、故郷ドンレミの平和を願うだけの羊飼いの少女だった。 神の声を聞くと言うその少女が人目を忍んで教会に通っていた理由とは―。 「THE RUN HIDE SEEK」 失った何かを描きたいのは俺であり、そしてあいつだ。 恋焦がれていたのはあいつであり、そして俺だ。 いつもの隠れ家でじゃれあいながら、若き二人の浮世絵師は同じ夢を抱いていた。 二人が描いた、一人の女性の絵。 「そう・・・振り返ったところ描いとくれよ。」 「SECOND CHILDREN」 「悲しい話は嫌いだ。」―そう言った男がいる。 季節を旅するように生きた男・平賀源内。 そんな彼の元に、最期の挨拶に訪れるひとりの親友。 彼らの生きた三つの季節、そして桜を待つ人々の美しくも儚い物語。 「THE CRUISING GENTLEMEN」 一枚の新聞記事から生まれた僕らの探偵まがいのサークル。 記念すべき一人目の依頼者の訪問によって、思わぬ大事件に巻き込まれていく。 言葉の始まりには『(かっこ)がある。 その終わりを探す僕らのたった一度の航海。
https://w.atwiki.jp/csss/pages/19.html
自己紹介 CS1.6もやってました。 最近はCSOだけしかやってません。 awpとuspがあれば多分やっていけます。 DEの横にuspが落ちてたらuspを拾う。そんな人です。 まるぼろまんとか言う人は一度ボッコボコにしてみたいです。 得意武器 Awp M4 usp DE scout 苦手武器 Glock 得意マップ de_dust2 de_inferno 苦手マップ de_nuke de_aztec de_train プレイスタイル Aggressive Sniper
https://w.atwiki.jp/kratomorg/pages/11.html
How to Taper Off Kratom Safely and Efficiently You might not be aware of it, but there are a number of ways you can taper off kratom. Tapering down is akin to weaning off medication, and you need to make sure you are doing it in the safest and most efficient way possible. By following the steps outlined in this guide, you will avoid the pitfalls of a potentially disastrous taper. The old-fashioned approach to tapering off kratom is to simply stop. That is, take a break from the product, and get your body used to being without it. Although this may sound like a great idea, it isn't a foolproof method. Unless you have a reliable support system, you're more likely to fail. Instead, you need to make a concerted effort to stick to your new regime. The most effective way to do it is by making a plan. For example, you can schedule a block of time each day when you are not consuming kratom. This is a good time to take your vitamins, drink plenty of water, and eat healthy. Also, be sure to find a healthy exercise routine. Getting your body moving will help you relax and burn off some of that kratom, as well as improve your mental health. If you have been using kratom for a while, you will probably need to cut back on your dose. A simple 0.5 gram reduction in your daily dosage is the minimum you should do. As a rule of thumb, it's best to cut your intake by at least one fifth. However, you should be aware that your tolerance level will affect the amount you need to reduce each time. So, it's wise to start a slow and steady pace. Using the right supplement will ensure that you taper off kratom in the best possible way. One of the most beneficial supplements to use while you're phasing out your kratom is D-Phenylalanine, which is a substance that enhances the effects of opioids while lowering your blood pressure and anxiety levels. Other supplements that are worth taking are DLPA, Maca root powder, and liposomal C. While these may not be as glamorous as other supplements, they are worth mentioning because they are effective at helping you taper off kratom in a safe and efficient manner. It's also worth noting that these elixirs are available over the counter. Check out https //kratom.org/guides/ for more details on kratom. Of course, there are a number of other things you should do to successfully taper off kratom. These include, but are not limited to, keeping a detailed journal, drinking plenty of water, and taking a vitamin or supplement that will boost your immune system. All of these items are small measures, but they will go a long way in helping you stay on track. The most effective method for determining the right dosage to taper off kratom involves an assessment of your needs and what you're able to afford. Your doctor can provide you with the most suitable medications to help you through the process.
https://w.atwiki.jp/xbox360analysis/pages/66.html
Dragon s Dogma - Editor http //www.360haven.com/forums/showthread.php?13958-Dragon-s-Dogma-Editor How to use 1) Extract ~ "DD_Savedata" from "DD_SAVEDATA_00". 2) Open ~ "DD_Savedata" in this program. 3) Edit ~ the text then Save the file. 4) Replace ~ "DD_Savedata" in "DD_SAVEDATA_00". 5) Rehash Resign ~ "DD_SAVEDATA_00". Updates - Version 1.1.0.0 included a find/replace feature for easier editing. Dragons Dogma Checksum Fixer v1.2 http //www.360haven.com/forums/showthread.php?13457-Dragon-s-Dogma-Checksum-Fixer How to use 1. Open your modded extracted save file (DD_Savedata) into the Checksum Fixer 2. Press Fix Checksum 3. Put the DD_Savedata file back into your Save 4. Rehash/Resign the Save 5. Play! How to Mod the Save 1. Open your Save in Horizon 2. Click the Contents tab and extract the DD_Savedata file 3. Use Offzip.exe to decompress the DD_Savedata file 4. Open the 00000020.dat file in Notepad.exe or Notepad++.exe 5. Mod what you want 6. Use Packzip.exe to recompress the 00000020.dat file back into your DD_Savedata file 7. Read the How to Use steps above Dragon s Dogma - Editor Version 1.0.0.0 http //www1.axfc.net/uploader/Sc/so/349758.zip key=DD Dragon s Dogma - Editor Version 1.1.0.0 http //www1.axfc.net/uploader/Sc/so/352257.zip key=DD Dragons Dogma Checksum Fixer v1.2 http //www1.axfc.net/uploader/Sc/so/349760.rar key=DD Offzip Packzip UI http //www1.axfc.net/uploader/Sc/so/349761.zip key=off 00000020.dat ITEM s16 name="data.mNum" value="###"/ ITEM QUANTITY 1 s16 name="data.mItemNo" value="###"/ ITEM ID u32 name="data.mFlag" value="###"/ ITEM LEVEL u16 name="data.mChgNum" value="###"/ UNKNOWN u16 name="data.mDay1" value="###"/ ITEM QUANTITY 2 (Quantity 2, 3 and 4 have to equal Quantity 1) u16 name="data.mDay2" value="###"/ ITEM QUANTITY 3 (Quantity 2, 3 and 4 have to equal Quantity 1) u16 name="data.mDay3" value="###"/ ITEM QUANTITY 4 (Quantity 2, 3 and 4 have to equal Quantity 1) s8 name="data.mMutationPool" value="###"/ UNKNOWN s8 name="data.mOwnerId" value="###"/ WHO THE ITEM BELONGS TO u32 name="data.mKey" value="###"/ UNKNOWN Item Level 1 - 0 Stars 11 - 1 Star 33 - 2 Stars 35 - 3 Stars 67 - Wyrmfire(Dragon) Owner Id 0 - Player 1 - Main Pawn 2 - First Rented Pawn 3 - Second Rented Pawn ID Ferrystone - 66 Kept Golden Egg - 267 150 - Portcrystal 151 - Wakestone 274 - Portcrystal 275 - Wakestone 276 - Wakestone Shard 170 - Gold Idol 198 - Silver Idol 199 - Bronze Idol Dragon s Dogma - アイテムID [RESEARCH] Dragon's Dogma Modding Character Name Letters Hidden/Bonus HAIR COLORS Hidden/Bonus EYE COLORS Hidden/Bonus SKIN COLORS Hidden/Bonus Names Pictures of Item Names/Pictures/Descriptions along with Item ID s (1,427 Items), I organized the items into Folders
https://w.atwiki.jp/chibaho/pages/616.html
†Red Pirate†【れっどぱいれーつ】 †Red Pirate†とは、巴流茅香が団長のグループである。 【自由】をテーマとした団体。チームカラーは主に赤とする。 年齢、性別を問わず、ゆっくりと時間を過ごしている団体。 現在メンバーを募集中で、団長に参加を申請すれば サイトの閲覧パスワードを手に入れることが出来るシステムになっている。 詳しく知りたい方は↓の†RP†公式ページを参照してみるといい。 ・省略すると †RP† RP 関連サイト †Red Pirate†公式ページ
https://w.atwiki.jp/inuchin/pages/12.html
MODTOOL(XSI6ベース)に関する覚書を列挙します。 レンダラーはOpenGLかDirectXのどちらか(ハードウェアレンダラーのみ) Ultimapperが使える ポリゴンリダクションが使える XSIとのファイルのやり取りが難しい
https://w.atwiki.jp/sindy6/
定期預金金利の比較について 現在では定期預金と言っても、つく金利は本当に雀の涙程度ですよね。 100万円を10年預けても、お金を引き出したりするのに定期的にATMで手数料を払ってしまったらマイナスになってしまう程ですから、 やってられないと思う方もいらっしゃる事かと思います。 それでも少しでも金利の良いところで定期預金を組みたいと思う方も多いのではないでしょうか。 ですので、今回色々な銀行の定期預金の金利を比較してみて、よりお得だと思った銀行を紹介したいと思います。 今、特にお得なのは普通の銀行ではなくてネット銀行です。 例えば郵貯の場合には、10万円以上の定期預金が年利0.035パーセント程です。 しかしネット銀行でしたら、定期預金にしなくても預けておくだけで0.1パーセントの金利がつくというところも多数ありました。 またネット銀行で定期に入れると、銀行にもよりますが年利0.3パーセント近いところが多いようです。 この差はかなり大きいですよね。 なので少しでも金利が高いところで定期預金を組みたいと考えている方には、ネット銀行をおすすめします。 ネットだと信頼できるか不安という方も、一度きちんと調べてみればその安全性もわかると思いますよ。 おすすめです。
https://w.atwiki.jp/gtavi_gta6/pages/1668.html
ラットバイク(Rat Bike) ラットバイク(Rat Bike)詳細データ 解説 改造項目 ゲーム内解説 入手方法・出現場所 参考 詳細 データ 種類 メーカー 和名 日本語訳 乗車定員 駆動 ギア バイク ウェスタン ラットバイク ※解説参照 2人 WD 5速 モデル ラジオ 主な選局 洗車 ※執筆予定 OFF 不可 プラットフォーム カスタム カラー デフォルトホイールタイプ オンライン専用 PS4 / Xbox One / PC限定 可 マット・ホワイト バイク プラットフォーム 価格 売却額 保険料 オンライン専用 PS4 / Xbox One / PC限定 $48,000 $28,800 $ プラットフォーム ガレージ保管 オンライン専用 自宅物件ガレージ PS4 / Xbox One / PC限定 可 解説 『バイカーアップデート』でウルフスベインと共に追加されたバイク。 名前にある「ラット」については、経年劣化でボロボロになった風合いを活かしたカスタムのことで「ネズミが住処にしていそう」なほどのオンボロ風の乗り物を指す。 その名称通りボディ全体の錆び付きやスピードメーターのレンズ破損などオンボロ風のカスタマイズが施されている。 性能面はウルフスベインと同一なのでそちらのページを参照。 改造項目 カスタムパーツはウルフスベインと同様の内容。ただし換装クロームパーツに錆が付いている。 標準クラクションも、従来のポンコツ車の音とは異なる独自のものである(勿論他のクラクションに交換することも可能)。 ホイールは交換すると錆のないものになる。気になる人は標準のままにしておこう。 ウルフスペインと異なり、ボディーペイントの項目は存在しない。 購入時にも色は指定できない上に他の色でペイントすると変な色になるので、下手に変えない方が無難。 ちなみに、クロームかメタルでペイントすると錆が無くなる。 ゲーム内解説 どんな本物のバイカーもそうであるように、必死で盗んだ金は タバコや酒やウェットティッシュに使いたいところでしょう。それなら、これで決まりです。 前の持ち主の痕跡がわからないように多少綺麗にして、時速130キロで走ってもバラバラにならない程度に 接着剤とディーゼルを詰め込んだだけで、絶賛発売中です。 環境に悪いリサイクルのようなものです。 (南SAスーパーオートの解説文より) 入手方法・出現場所 南SAスーパーオートのサイトより購入。オンライン限定。「サンアンドレアスの傭兵」アップデート以降、販売サイトから削除された。 モーターサイクルクラブに所属している際、要請できるバイクが存在しない場合一時的にラットバイクを呼び出す事が出来る。 地下基地から行える原材料調達ミッション、かつ自分の勢力がモーターサイクルクラブの場合にのみ利他主義のカルト教団を襲撃して原材料を強奪するパターンの場合の追っ手として出現。セキュリサーブの場合に出現するラットローダーとは違い、オンボロとは言えバイクならではの機動力とスピードで、そしてお馴染みNPCの速力補正で非常にしつこく食い下がって来る上、ドライバーの武器が二連式ショットガンとこっちの方が危険度が段違い。後方から迫ってきたならドライブバイで撃ち抜いて転倒させ、前方からなら伏せつつ体当たりで弾き飛ばしてしまうのが良い。 参考
https://w.atwiki.jp/sp6dan/pages/21.html
SP6 IR #6 STAGE1DUE TOMORROW STAGE2ay carumba!!!! STAGE3G2 STAGE4FIRE FIRE 1DJ CIRNO95451[2426 / 599] 2DJ JILL-5144[2124 / 896] 3DJ KULU5028[2094 / 840] 4DJ SHN*TM4922[1997 / 928] 5DJ GOD-P4886[1937 / 1012] 6DJ VEGAS4741[1902 / 937] 7DJ YOTTA.4726[1905 / 916] 8DJ *23KI*4719[1894 / 931] 9DJ ECHO4638[1837 / 964] 10DJ AIKA4610[1854 / 902] 11DJ OPU-NA4588[1841 / 906] 12DJ GENKEY4539[1796 / 947] 13DJ RILINX4528[1805 / 918] 14DJ WKYS4509[1714 / 1081] 15DJ INS-K4474[1764 / 946] 16DJ KUMA*4464[1721 / 1022] 17DJ STEMAN4456[1718 / 1020] 18DJ ANTINY4447[1717 / 1013] 19DJ JAZZY4433[1757 / 919] 20DJ GINO4429[1728 / 973] 21DJ PPP4417[1700 / 1017] 22DJ SAK.4414[1704 / 1006] 23DJ BINAP4401[1708 / 985] 24DJ LAN4396[1669 / 1058] 25DJ 0007P4354[1676 / 1002] 26DJ 6664348[1638 / 1072] 27DJ SOLVA4341[1643 / 1055] 28DJ D0RA4341[1690 / 961] 29DJ BMBUPA4341[1702 / 937] 30DJ X3V!U$4320[1635 / 1050] 31DJ AKANE4313[1674 / 965] 32DJ FINE*4301[1693 / 915] 33DJ PAGYA4244[1625 / 994] 34DJ MIZORE4225[1644 / 937] 35DJ CINQUE4223[1582 / 1059] 36DJ CHALLL4219[1589 / 1041] 37DJ SAN4192[1656 / 880] 38DJ M.MIYA4175[1550 / 1075] 39DJ 2282294170[1560 / 1050] 40DJ 31044139[1568 / 1003] 41DJ KEI4112[1543 / 1026] 42DJ CKY4064[1542 / 980] 43DJ ZIN4019[1518 / 983] 44DJ T.MA4010[1519 / 972] 45DJ SASH3902[1460 / 982] 46DJ GUREN3898[1451 / 996] 47DJ ALHENA3891[1434 / 1023] 48DJ HACHI3887[1502 / 883] 49DJ TOMO.S3876[1462 / 952] 50DJ L.SHO3857[1442 / 973] 51DJ NASU383846[1441 / 964] 52DJ KUNAGI3845[1448 / 949] 53DJ KUROGI3832[1404 / 1024] 54DJ NORA3832[1379 / 1074] 55DJ *MIZU*3829[1418 / 993] 56DJ KUROI3818[1386 / 1046] 57DJ SIHN3791[1404 / 983] 58DJ ARC3787[1397 / 993] 59DJ AINSEL3785[1383 / 1019] 60DJ IGO3759[1402 / 955] 61DJ B-DASH3730[1408 / 914] 62DJ SMJ3708[1410 / 888] 63DJ VIVIFY3702[1320 / 1062] 64DJ AX3663[1286 / 1091] 65DJ CLAY3611[1326 / 959] 66DJ EVO.3596[1313 / 970] 67DJ SANNO3577[1304 / 969] 68DJ OUKA3555[1295 / 965] 69DJ NAKA.C3548[1289 / 970] 70DJ LGO3473[1251 / 971] 71DJ KNCC3280[1180 / 920] 72DJ YURI3273[1136 / 1001] 73DJ LAND3159[1114 / 931] 74DJ MAISEN3150[1100 / 950] 75DJ 5SAKRA2842[1009 / 824] 76DJ P2715[951 / 813] 77DJ SP-RIT2667[1036 / 595]
https://w.atwiki.jp/sampleisbest/pages/245.html
開発環境 Microsoft Visual C# 2010 Express (SP1) 実行環境 Microsoft Windows XP Home Edition (SP3) プロジェクトの種類 Windows Game (4.0) プロジェクト名 XnaCreateMesh Dice6.png Game1.cs using System; using System.Collections.Generic; using System.IO; using System.Windows.Forms; // .NET参照 using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; // エイリアス using Keys = Microsoft.Xna.Framework.Input.Keys; using ButtonState = Microsoft.Xna.Framework.Input.ButtonState; namespace XnaCreateMesh { class Game1 Game { GraphicsDeviceManager graphics; SpriteBatch sprite; SpriteFont font; BasicEffect effect; Texture2D texture; MouseState mStateOld = new MouseState(); List VertexPositionNormalTexture vertexList = new List VertexPositionNormalTexture (); List short indexList = new List short (); VertexBuffer vertexBuffer; IndexBuffer indexBuffer; int[] adjacency; // 重複頂点 int originalVertices; // fps int fpsSec; int fpsDraw = 0; int fpsCount = 0; // カメラ float camLat = 30; float camLon = -150; float camDist = 10; public Game1() { graphics = new GraphicsDeviceManager(this); graphics.PreferredBackBufferWidth = 1280; graphics.PreferredBackBufferHeight = 720; Content.RootDirectory = "Content"; IsMouseVisible = true; } protected override void LoadContent() { sprite = new SpriteBatch(GraphicsDevice); font = Content.Load SpriteFont ("SpriteFont1"); texture = Content.Load Texture2D ("Dice6"); effect = new BasicEffect(GraphicsDevice); effect.EnableDefaultLighting(); //effect.VertexColorEnabled = true; effect.TextureEnabled = true; effect.Texture = texture; effect.Projection = Matrix.CreatePerspectiveFieldOfView( MathHelper.ToRadians(45), GraphicsDevice.Viewport.AspectRatio, 1, 100); CreateMesh(); base.LoadContent(); } void CreateMesh() { CreateBox(-0.5f, 0.5f, -0.5f, 0.5f, -0.5f, 0.5f); // 頂点 vertexBuffer = new VertexBuffer(GraphicsDevice, typeof(VertexPositionNormalTexture), vertexList.Count, BufferUsage.WriteOnly); vertexBuffer.SetData(vertexList.ToArray()); // 索引 indexBuffer = new IndexBuffer(GraphicsDevice, typeof(short), indexList.Count, BufferUsage.WriteOnly); indexBuffer.SetData(indexList.ToArray()); // 重複頂点 GenerateAdjacency(0.01f); } void CreateBox(float x1, float x2, float y1, float y2, float z1, float z2) { // 頂点リスト Vector3[] box = { new Vector3(x2, y2, z2), new Vector3(x2, y1, z2), new Vector3(x2, y2, z1), new Vector3(x2, y1, z1), new Vector3(x1, y1, z1), new Vector3(x1, y1, z2), new Vector3(x1, y2, z1), new Vector3(x1, y2, z2), }; CreateRectangle(box[0], box[1], box[2], box[3], 3, 0); // +X面 4 North CreateRectangle(box[4], box[5], box[6], box[7], 2, 0); // -X面 3 South CreateRectangle(box[0], box[2], box[7], box[6], 0, 0); // +Y面 1 Up CreateRectangle(box[4], box[3], box[5], box[1], 1, 1); // -Y面 6 Down CreateRectangle(box[0], box[7], box[1], box[5], 0, 1); // +Z面 5 East CreateRectangle(box[4], box[6], box[3], box[2], 1, 0); // -Z面 2 West } void CreateRectangle(Vector3 v1, Vector3 v2, Vector3 v3, Vector3 v4, int u, int v) { int numVertices = vertexList.Count; Vector3 norm = Vector3.Cross(v2 - v1, v3 - v1); norm.Normalize(); vertexList.Add(new VertexPositionNormalTexture( v1, norm, new Vector2((u + 0) / 4.0f, (v + 0) / 4.0f))); vertexList.Add(new VertexPositionNormalTexture( v2, norm, new Vector2((u + 1) / 4.0f, (v + 0) / 4.0f))); vertexList.Add(new VertexPositionNormalTexture( v3, norm, new Vector2((u + 0) / 4.0f, (v + 1) / 4.0f))); vertexList.Add(new VertexPositionNormalTexture( v4, norm, new Vector2((u + 1) / 4.0f, (v + 1) / 4.0f))); for (int i = 0; i 6; i++) { indexList.Add((short)(numVertices + (i 3 ? i 6 - i))); } } void GenerateAdjacency(float epsilon) { adjacency = new int[vertexList.Count]; originalVertices = 0; for (int i = 0; i vertexList.Count; i++) { int j; for (j = 0; j i; j++) { if ((vertexList[i].Position - vertexList[j].Position).Length() epsilon) break; } adjacency[i] = j; if (i == j) originalVertices++; } } protected override void Update(GameTime gameTime) { float deltaLat = 0; float deltaLon = 0; float deltaDist = 0; // キーボード KeyboardState kState = Keyboard.GetState(); if (kState.IsKeyDown(Keys.Escape)) Exit(); if (kState.IsKeyDown(Keys.Up)) deltaLat = 1; if (kState.IsKeyDown(Keys.Down)) deltaLat = -1; if (kState.IsKeyDown(Keys.Left)) deltaLon = 1; if (kState.IsKeyDown(Keys.Right)) deltaLon = -1; if (kState.IsKeyDown(Keys.PageUp)) deltaDist = -0.2f; if (kState.IsKeyDown(Keys.PageDown)) deltaDist = 0.2f; if (kState.IsKeyDown(Keys.S) kState.IsKeyDown(Keys.LeftControl)) SaveMesh(); // マウス MouseState mState = Mouse.GetState(); if (mState.LeftButton == ButtonState.Pressed) { deltaLat = (mState.Y - mStateOld.Y) * 0.5f; deltaLon = (mState.X - mStateOld.X) * 0.5f; } if (mState.ScrollWheelValue != mStateOld.ScrollWheelValue) { deltaDist = (mState.ScrollWheelValue - mStateOld.ScrollWheelValue) / -120; } mStateOld = mState; // カメラ移動 if (deltaLat != 0) { camLat = MathHelper.Clamp(camLat + deltaLat, -89.9f, 89.9f); } if (deltaLon != 0) { camLon += deltaLon; if (camLon = -180) camLon += 360; if (180 camLon) camLon -= 360; } if (deltaDist != 0) { camDist = MathHelper.Clamp(camDist + deltaDist, 1, 1000); } base.Update(gameTime); } protected override void Draw(GameTime gameTime) { GraphicsDevice.Clear(Color.CornflowerBlue); GraphicsDevice.DepthStencilState = DepthStencilState.Default; GraphicsDevice.RasterizerState = RasterizerState.CullClockwise; // カメラ位置 float rad = MathHelper.ToRadians(camLat); float y = (float)Math.Sin(rad) * camDist; float r = (float)Math.Cos(rad) * camDist; rad = MathHelper.ToRadians(camLon); float x = (float)Math.Cos(rad) * r; float z = (float)Math.Sin(rad) * r; effect.View = Matrix.CreateLookAt(new Vector3(x, y, z), Vector3.Zero, Vector3.Up); GraphicsDevice.SetVertexBuffer(vertexBuffer); GraphicsDevice.Indices = indexBuffer; foreach (EffectPass pass in effect.CurrentTechnique.Passes) { pass.Apply(); GraphicsDevice.DrawIndexedPrimitives(PrimitiveType.TriangleList, 0, 0, vertexBuffer.VertexCount, 0, indexBuffer.IndexCount / 3); } // fps fpsDraw++; if (gameTime.TotalGameTime.Seconds != fpsSec) { fpsCount = fpsDraw; fpsDraw = 0; fpsSec = gameTime.TotalGameTime.Seconds; } sprite.Begin(); string text = String.Format( "fps={0} lat={1 f0} lon={2 f0} dist={3 f1}", fpsCount, camLat, camLon, camDist); sprite.DrawString(font, text, new Vector2(0, 0), Color.White); sprite.End(); base.Draw(gameTime); } void SaveMesh() { try { string workDir = "C \\tmp\\"; string workFile = "mesh.x"; File.Copy(workDir + "template.txt", workDir + workFile, true); using (StreamWriter w = new StreamWriter(workDir + workFile, true)) { w.WriteLine(); w.WriteLine("Mesh {"); w.WriteLine(string.Format(" {0};", vertexList.Count)); foreach (var vertex in vertexList) { w.WriteLine(string.Format(" {0 f6};{1 f6};{2 f6};,", vertex.Position.X, vertex.Position.Y, vertex.Position.Z)); } w.WriteLine(string.Format(" {0};", indexList.Count / 3)); for (int i = 0; i indexList.Count; i += 3) { w.WriteLine(string.Format(" 3;{0},{1},{2};,", indexList[i], indexList[i + 1], indexList[i + 2])); } w.WriteLine(); w.WriteLine(" MeshNormals {"); w.WriteLine(string.Format(" {0};", vertexList.Count)); foreach (var vertex in vertexList) { w.WriteLine(string.Format(" {0 f6};{1 f6};{2 f6};,", vertex.Normal.X, vertex.Normal.Y, vertex.Normal.Z)); } w.WriteLine(string.Format(" {0};", indexList.Count / 3)); for (int i = 0; i indexList.Count; i += 3) { w.WriteLine(string.Format(" 3;{0},{1},{2};,", indexList[i], indexList[i + 1], indexList[i + 2])); } w.WriteLine(" } // MeshNormals"); w.WriteLine(); w.WriteLine(" VertexDuplicationIndices {"); w.WriteLine(string.Format(" {0};", adjacency.Length)); w.WriteLine(string.Format(" {0};", originalVertices)); foreach (int i in adjacency) { w.WriteLine(string.Format(" {0},", i)); } w.WriteLine(" } // VertexDuplicationIndices"); w.WriteLine(); w.WriteLine(" MeshMaterialList {"); w.WriteLine(string.Format(" {0};", 1)); w.WriteLine(string.Format(" {0};", 1)); w.WriteLine(string.Format(" {0},", 0)); w.WriteLine(" Material {"); w.WriteLine(string.Format(" {0 f6};{1 f6};{2 f6};{3 f6};;", 1, 1, 1, 1)); w.WriteLine(string.Format(" {0 f6};", 50)); w.WriteLine(string.Format(" {0 f6};{1 f6};{2 f6};;", 1, 1, 1)); w.WriteLine(string.Format(" {0 f6};{1 f6};{2 f6};;", 0, 0, 0)); w.WriteLine(" TextureFilename {"); w.WriteLine(" \"{0}\";", "Dice6.png"); w.WriteLine(" } // TextureFilename"); w.WriteLine(" } // Material"); w.WriteLine(" } // MeshMaterialList"); w.WriteLine(); w.WriteLine(" MeshTextureCoords {"); w.WriteLine(string.Format(" {0};", vertexList.Count)); foreach (var vertex in vertexList) { w.WriteLine(string.Format(" {0 f6};{1 f6};,", vertex.TextureCoordinate.X, vertex.TextureCoordinate.Y)); } w.WriteLine(" } // MeshTextureCoords"); w.WriteLine("} // Mesh"); } MessageBox.Show("保存しました。", "XnaCreateMesh", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception e) { MessageBox.Show(e.Message, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } template.txt xof 0303txt 0032 template Coords2d { F6F23F44-7686-11cf-8F52-0040333594A3 FLOAT u; FLOAT v; } template Material { 3D82AB4D-62DA-11cf-AB39-0020AF71E433 ColorRGBA faceColor; FLOAT power; ColorRGB specularColor; ColorRGB emissiveColor; [...] } template Mesh { 3d82ab44-62da-11cf-ab39-0020af71e433 DWORD nVertices; array Vector vertices[nVertices]; DWORD nFaces; array MeshFace faces[nFaces]; [...] } template MeshFace { 3d82ab5f-62da-11cf-ab39-0020af71e433 DWORD nFaceVertexIndices; array DWORD faceVertexIndices[nFaceVertexIndices]; } template MeshMaterialList { F6F23F42-7686-11cf-8F52-0040333594A3 DWORD nMaterials; DWORD nFaceIndexes; array DWORD faceIndexes[nFaceIndexes]; [Material] } template MeshNormals { f6f23f43-7686-11cf-8f52-0040333594a3 DWORD nNormals; array Vector normals[nNormals]; DWORD nFaceNormals; array MeshFace faceNormals[nFaceNormals]; } template MeshTextureCoords { F6F23F40-7686-11cf-8F52-0040333594A3 DWORD nTextureCoords; array Coords2d textureCoords[nTextureCoords]; } template TextureFilename { A42790E1-7810-11cf-8F52-0040333594A3 STRING filename; } template Vector { 3d82ab5e-62da-11cf-ab39-0020af71e433 FLOAT x; FLOAT y; FLOAT z; } template VertexDuplicationIndices { b8d65549-d7c9-4995-89cf-53a9a8b031e3 DWORD nIndices; DWORD nOriginalVertices; array DWORD indices[nIndices]; } ////////////////////////////////////////////////////////////////////////////////