Yêu cầu hệ thống có sẵn

Windows 10 trở lên, khuyến khích dùng cpu x64

Ram 4GB trở lên

Visual Studio 2017 trở lên có cài Desktop development C++

Cài đặt Windows SDK, khuyến khích dùng SDK 10.0.26624 (bug của Microsoft, SDK này trong Visual Studio là 10.0.10240)

MSVC Platform toolset 14.0 trở lên 

Cách đơn giản dùng ANGLE với branch của Microsoft thiết lập sẵn

Đầu tiên các bạn chọn folder sẽ chứa dự án, mở PowerShell và clone source code ANGLE với cú pháp có sẵn theo branch sau:

git clone --branch uwp-2017 https://github.com/microsoft/angle

Vì Microsoft đã sử dụng branch của Google có sẵn nên hiện tại chỉ còn branch cũ 2017

Tiếp theo các bạn vào folder đã clone 

Disk-name:\your-folder-project-here\angle\src

Mở file angle.sln, chúng ta mở Property Pages từng project một, tùy chỉnh lại SDK, platform toolset có sẵn trong máy. Lựa chọn platform target để xuất kết quả build, vì chúng ta chỉ dừng lại ở mức tìm hiểu học tập nên chỉ cần build win32-x86.

Sau khi xuất kết quả build chúng ta có 2 file static library là libGLESv2.lib và libEGL.lib và 2 file dynamic library là libEGL.dll và libGLESv2.dll. Nếu bạn compile trên Mac với Xcode hoặc Linux với GCC sẽ có các file .dylib hoặc .so tương ứng cùng tên.

Bây giờ chúng ta sẽ bắt đầu thiết lập GLES trên Visual Studio

Tạo mới một C++ Windows Desktop Application project.

Bạn vào Property Pages, vào mục C/C++, vào mục General vào Additional Include Directories

Chúng ta copy đường dẫn khi của project ANGLE chứa các file header

Disk-name:\your-folder-project-here\angle\include

Tiếp theo ta vào phần mục Linker vào mục General vào Additional Dependencies thêm vào 2 đường dẫn 2 file .lib khi nãy chúng ta build:

Disk-name:\your-folder-project-here\angle\src\Debug_Win32\lib\libGLESv2.lib
Disk-name:\your-folder-project-here\angle\src\Debug_Win32\lib\libEGL.lib

Lúc này ta trở lại cửa sổ gõ code

Chúng ta thêm các file header để chạy GLES trong project của chúng ta.

#include <EGL/egl.h>
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>

Sau khi compile xong file source trên ta copy 2 file .dll khi build cùng lúc 2 file .lib khi nãy vào trong file application.exe ta vừa build.

Kết quả là chúng ta đã thiết lập cơ bản ANGLE với GLES trên Visual Studio.

Mình cũng đã tạo project cơ bản cho ANGLE-GLES trên Visual Studio 2022. các bạn có thể clone về tham khảo tại đây 

Cách dùng ANGLE phức tạp hơn với Google Ninja trên Visual Studio

Mình không khuyến khích cách này cho các bạn mới dùng Visual Studio cho C++, tuy nhiên cách này cho phép bạn sử dụng các tính năng khác của ANGLE gồm Vulkan, OpenGL hay Metal (chỉ có trên Mac).

Yêu cầu dùng Visual Studio bản mới nhất càng tốt tương tự với SDK và platform toolset

Các bạn clone branch ANGLE của Google tại

https://github.com/google/angle

Tiếp theo các bạn tải xuống công cụ GN của Google

Bạn vào công cụ GN bằng command line để tạo Visual Studio project

gn gen out/Debug --sln=angle-debug --ide=vs2019

Mở project sau khi đã tạo bằng Visual Studio, tiếp tục build giống như branch Microsoft để ra file .dll và .lib tương tự. Lưu ý là 2 branch này khác nhau do đó đường dẫn phải được thay đổi lại cho phù hợp với cấu trúc thư mục của branch Google.

Các chi tiết về build bằng Ninja xem thêm tại đây

Cấu hình để code shader trên Visual Studio Code

Yêu cầu cài đặt

Tải Visual Studio Code (hỗ trợ Windows, Linux, Mac)

Cài đặt extension là WebGL GLSL Editor (WebGL là phiên bản nền web của GLES, do đó shader tương thích ngược với nhau)

Mở file .vert hoặc file .frag sẽ thấy được cú pháp được tô màu

Comments


Comments are closed