見出し画像

windows visual studioでデスクトップマスコット作りのチュートリアルを進めるためのメモ

チュートリアルを進めさせて頂いた記事はこちら


visual studioの操作方法などは、上記記事を見ればわかるので、この記事では省略します。進める上で自分が知らないことなどの補足としてメモを書いていきます。

使用するもの

1.visual studio2019

2.言語:c♯

3.ライブラリ:dxlibというゲームライブラリ

4.MMDモデル

c♯とは、Microsoftによって開発された言語。c++やJavaをもとに作られたけど、互換性は全くない独立した言語とのこと。

DXlibとはc++用のゲーム開発用ライブラリ。c♯用のライブラリも準備されているのでc♯でも使える。

MMDモデルとは、mikumikudanceという3Dツールの略。ニコニコ動画で配布されている。今回僕もニコニコ動画のサイト内からデータをダウンロードしました。

MMDユーザーモデルというものもあり、それはユーザーが自作で作れるみたい。

MMDモデルとDxLibの関係性

MMDモデルを動かしたり操作をするために、dxlibの関数を利用する。


c♯ファイルの拡張子

csで、<ファイル名>.cs

と書く。どうしてもcssファイルをイメージしてしまう。

dxlibのダウンロード

今回作成するプロジェクトフォルダ配下のフォルダにライブラリをダウンロードする。そして、visual studioから操作し、フォルダに入れたファイルを参照させることで、ライブラリが使えるようになる。


visual studioのプロジェクト作成とdxlibの準備が整ったら、ソースコードを記入する。

Form1.cs

//デフォルトで書かれているusing宣言↓
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

//下記のusingを追加
using DxLibDLL;//DxLibを使用

namespace DesktopMascot {
   public partial class Form1 : Form {
       //
       //必要な変数
       //
       public Form1()
       {
           InitializeComponent();//フォームの初期設定
           DX.SetOutApplicationLogValidFlag(DX.FALSE);//Log.txtを生成しないように設定
           DX.SetUserWindow(Handle);//DxLibの親ウインドウをこのフォームに設定
           DX.DxLib_Init();//DxLibの初期化処理
           DX.SetDrawScreen(DX.DX_SCREEN_BACK);//描画先を裏画面に設定
           //
           //画像の読み込み等
           //
       }
       public void MainLoop()
       {
           DX.ClearDrawScreen();//裏画面を消す
           //
           //毎フレーム呼ぶ処理
           //
           DX.ScreenFlip();//裏画面を表画面にコピー
       }
       private void Form1_FormClosed(object sender, FormClosedEventArgs e)
       {
           DX.DxLib_End();//DxLibの終了処理
       }
   }
}

parcial classとは、部分クラスと呼ばれるもの。
Formを継承したForm1を作成する際にクラスを修飾している。

同じクラスを分割させて分けて記載することができる。

分けたものはコンパイル時に統合されるみたい。

public partial class Employee
{
   public void DoWork()
   {
   }
}
public partial class Employee
{
   public void GoToLunch()
   {
   }
}


ふぁhfkじゃじょf














この記事が気に入ったらサポートをしてみませんか?