什么是 ImGui IMGUI (Immediate Mode Graphical User interface),下載地址。 ImGui 是一種比較新穎的 GUI 實現模式,適用於顯示區域實時刷新的程序里面。在 Simple2D 上實現 GUI,如果要自己編寫一個 GUI 庫 ...
什么是 ImGui IMGUI (Immediate Mode Graphical User interface),下載地址。 ImGui 是一種比較新穎的 GUI 實現模式,適用於顯示區域實時刷新的程序里面。在 Simple2D 上實現 GUI,如果要自己編寫一個 GUI 庫 ...
閱讀文章前需要了解的知識,紋理:https://learnopengl-cn.github.io/01%20Getting%20started/06%20Textures/ 過程簡述:利用 ...
在這篇文章中,我將詳細說明如何編寫一個簡易的粒子系統。 粒子系統可以模擬許多效果,下圖便是這次的粒子系統的顯示效果。為了方便演示,就弄成了一個動圖。 圖中,同時顯示了 7 種不同粒子效果,看上 ...
要實現 Signal-Slot,Signal 類中應該擁有一個保存 std::function 的數組: 接下來將會按照下圖中可能出現的問題設計 Signal-Slot: ...
使用 BASS 和 ImGui 實現音樂播放器 MusicPlayer。 將播放器和一個文件夾關聯起來,程序剛開始運行的時候就從該文件夾加載所有音頻文件。而文件夾的路徑則保存在配置文件中,所 ...
BASS 簡介 BASS是一個在多個平台上用於軟件的音頻庫。其目的是為開發人員提供功能強大且高效的示例流(MP3,MP2,MP1,OGG,WAV,AIFF),MOD 音樂(XM, ...
了解 QT 的應該知道,QT 有一個信號槽 Singla-Slot 這樣的東西。信號槽是 QT 的核心機制,用來替代函數指針,將不相關的對象綁定在一起,實現對象間的通信。 考慮為 Simple2D 添加一個類似的信號槽,實現對象間的通信。當然,功能比較簡單,不過對於 Simple2D ...
由於沒有使用GLFW庫,接下來得費一番功夫。 閱讀這篇文章前請看一下這個網頁:https://learnopengl-cn.github.io/01%20Getting%20started/02%2 ...
要把 ImGui 應用到項目中,先拷貝方框中的源文件到項目: 這些文件是 ImGui 的實現源碼,可作為第三方庫新建一個文件夾進行放置。 接下來是渲染部分的代碼,項目可能使用 DirectX 或 OpenGL 進行渲染。Simple2D 使用的是 OpenGL3 ...
事實上,前面編寫的渲染器 Renderer 非常簡陋,雖然能夠進行一些簡單的渲染,但是它並不能滿足我們的要求。 當渲染粒子系統時,需要開啟混合模式,但渲染其他頂點時卻不需要開啟混合模式。所以 ...