Raspberrypi 4でOpenGLES(ウィンドウの表示)

開発環境 Raspberry Pi 4 8GB Raspberry Pi OS(32bit) 環境構築 ライブラリのインストール sudo apt install libgles2-mesa-dev libegl1-mesa-dev xorg-dev ソースコード main.cpp #include <X11/Xlib.h> #include <X11/Xutil.h> #include <GLES2/gl2.h> #include <EGL/egl.h> #include <EGL/eglext.h> #include <iostream> #include <unistd.h> b</unistd.h></iostream></egl/eglext.h></egl/egl.h></gles2/gl2.h></x11/xutil.h></x11/xlib.h>…

WSLでOpenGL

環境構築 WSLのインストール コマンドプロンプトを管理者として実行しする. 下のコマンドを実行し,Ubuntuをインストール.(ディストリビューションはUbuntuにしとく) wsl --install -d Ubuntu インストールが終わったら,ユーザ名とパスワードを求められ…

npmを使用したweb開発環境構築(for Windows)

はじめに Three.jsを使用した開発をするため,web開発環境の構築を行う. web開発初心者なので,できるだけ簡単な方法でやりたい. 環境 Windows10 Home 開発環境構築 Node.jsのインストール 公式サイトからNode.jsをダウンロード.推奨版でいいと思われる.…

DirectX11 マルチスクリーン3

続き モニターの数を取得してスワップチェインの生成,デプスステンシルバッファの生成をできるようになったので書きます. 変数の宣言 std::vector<IDXGISwapChain*> _pSwapChains; std::vector<ID3D11Texture2D*> _pRenderTargets; std::vector<ID3D11RenderTargetView*> _pRenderTargetViews; std::vector<ID3D11DepthStencilState*> _pDepthStenc</id3d11depthstencilstate*></id3d11rendertargetview*></id3d11texture2d*></idxgiswapchain*>…

DirectX11 マルチスクリーン2

画面の初期化 スワップチェインとレンダーターゲットをモニターの数だけ生成する.できればモニターの数を自動で取得して初期化をしたかったが,めんどくさそうだったのでやめた. モニターの情報を保持する構造体を作成 struct SCREEN { int32_t X; int32_t…

DirectX11 マルチスクリーン1

はじめに 現在このような環境でモニターを配置している.これに対応できるようにウィンドウを表示したい. フルスクリーンでウィンドウの表示 方法① Win32APIで愚直にフルスクリーン ameblo.jp これを参考にフルスクリーン表示をしてみる SetMenu(_hwnd, NUL…

DirectX11 初期化

はじめに DirectX11を使用して画面の初期化を行う. 環境 Windows10 Home Visual Studio 2022 C++ AMD Ryzen5 3600 RAM 24GB GeForce GTX1060 6GB ウィンドウの作成 hashimoto128.hatenablog.com GPUを列挙して選択 bool DxManager::CreateFactory() { ComPtr<IDXGIOutput></idxgioutput>…

Win32APIでウィンドウの表示

はじめに Win32APIを使用したウィンドウの表示(よく使うけどよく忘れるため) 一応,WINMAINとmainの両方 環境 Windows10 Home Visual Studio 2022 WINMAINの方 設定 ソリューションエクスプローラー > プロジェクト名 > 構成プロパティ > リンカー > シス…

DirectX12 ⑧ ポリゴンの描画

ポリゴンの描画 環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 ソースコード Scene.h #pragma once #include <d3d12.h> #include <dxgiformat.h> #include <DirectXMath.h> #include <wrl/client.h> #include <cstdint> #include <iostream> #inc</iostream></cstdint></wrl/client.h></directxmath.h></dxgiformat.h></d3d12.h>…

ニキシー管時計を作る

はじめに ニキシー管の時計を作ろうと思ったが,めんどくさいしお金がないのでCGで作ることにした. DirectX11で透過ウィンドウを使用してポリゴンを表示していたのでそれを利用する. 環境 AMD Ryzen 5 3600 24.0GB NVIDIA GeForce GTX 1060 6GB Windows10 …

Directx11 ウィンドウの透過

ウィンドウの透過 docomoの羊を作るためにウィンドウの透過をしたかった。 DirectX12で行っていたが、ウィンドウの透過をするための情報が見つからず、DirectX11で行うことにした。 ヘッダ App.h #pragma once #include <Windows.h> #include <cstdint> #include <string> #include "DxMa</string></cstdint></windows.h>…

DirectX12 ⑦ 定数バッファの作成

定数バッファの作成 環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 ソースコード DxStruct.h #pragma once #include <DirectXMath.h> #include <vector> struct alignas(256) Transform { Direc</vector></directxmath.h>…

DirectX12 ⑥ パイプラインステートの作成

パイプラインステートの作成 描画するためのパイプライン 環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 ソースコード PipelineState.h #pragma once #include <d3d12.h> #includ</d3d12.h>…

DirectX12 ⑤ ルートシグネチャの作成

ルートシグネチャの作成 環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 ソースコード RootSignature.h #pragma once #include <d3d12.h> #include <cstdint> #include <wrl/client.h> #include <iostream> #include</iostream></wrl/client.h></cstdint></d3d12.h>…

DirectX12 ④ インデックスバッファの作成

インデックスバッファの作成 GPUにインデックスのデータを渡すためのバッファ。 環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 ソースコード IndexBuffer.h #pragma onc…

DirectX12 ③ 頂点バッファの作成

頂点バッファの作成 GPUに頂点のデータを渡すためのバッファ。 環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 ソースコード VertexBuffer.h #pragma once #include <d3d12.h> #in</d3d12.h>…

DirectX12 ② 初期化

DirectX12の初期化 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 画面のクリアまで ヘッダファイル Dx.h #pragma once #include <dxgi1_4.h> #include <d3d12.h> #include <wrl/client.h> #include <cstdint> #include <iostream> </iostream></cstdint></wrl/client.h></d3d12.h></dxgi1_4.h>…

DirectX12 ① ウィンドウの作成

開発環境 言語 : C++ 開発環境 : Visual Studio 2020 OS : Windows10 CPU : AMD Ryzen5 3600 RAM : 24.0GB GPU : NVIDIA GeForce GTX 1050 DirectX12について ここでは、Direct3D 12のことをDirectX12と呼ぶ。DirectX12は、Microsoftが開発する、DirectX12互…