All Projects → tamamu → glisph

tamamu / glisph

Licence: MIT license
Glyph rendering engine using OpenGL shading language for Common Lisp.

Programming Languages

common lisp
692 projects

Projects that are alternatives of or similar to glisph

MoravaEngine
2D/3D graphics engine written in C++ language. It currently supports the following graphics APIs: OpenGL 3.3+, Vulkan 1.2, DirectX 11. Its current purpose is to experiment with various CG concepts and techniques.
Stars: ✭ 129 (+303.13%)
Mutual labels:  rendering, glsl
Gpu Gems Book Source Code
💿 CD Content ( Source Code ) Collection of Book <GPU Gems > 1~ 3 | 《GPU精粹》 1~ 3 随书CD(源代码)珍藏
Stars: ✭ 567 (+1671.88%)
Mutual labels:  rendering, glsl
makma
Makma is a deferred Vulkan renderer written in C++.
Stars: ✭ 77 (+140.63%)
Mutual labels:  rendering, glsl
Nabla
OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android
Stars: ✭ 235 (+634.38%)
Mutual labels:  rendering, glsl
Vrt
🔅 Ray tracing library for Vulkan API (indev)
Stars: ✭ 111 (+246.88%)
Mutual labels:  rendering, glsl
Fake-Interior-Shader-for-GodotEngine
Interior Mapping shader for the Godot Game Engine 3.x that works with both GLES3 and GLES2.
Stars: ✭ 40 (+25%)
Mutual labels:  rendering, glsl
Touchdesigner shared
TouchDesigner toxes and small projects
Stars: ✭ 385 (+1103.13%)
Mutual labels:  rendering, glsl
Gpu Pro Books Source Code
💿 Source Code Collection of Book <GPU Pro> 1~ 7 | 《GPU Pro》1~ 7 书本源代码珍藏
Stars: ✭ 323 (+909.38%)
Mutual labels:  rendering, glsl
Shaderworkshop
Interactive GLSL fragment shaders editor made with Qt
Stars: ✭ 43 (+34.38%)
Mutual labels:  rendering, glsl
Pixi.js
The HTML5 Creation Engine: Create beautiful digital content with the fastest, most flexible 2D WebGL renderer.
Stars: ✭ 34,982 (+109218.75%)
Mutual labels:  rendering, glsl
DuEngine
An efficient interactive C++ renderer for ShaderToy-alike demos with 2D/3D/CubeMap/Video/Camera/LightField/Volume textures. (Partially used in my I3D 2018 papers)
Stars: ✭ 62 (+93.75%)
Mutual labels:  rendering, glsl
Glsltuto
GLSL shaders tutorial
Stars: ✭ 168 (+425%)
Mutual labels:  rendering, glsl
Messier87
A realtime raytracing blackhole renderer
Stars: ✭ 53 (+65.63%)
Mutual labels:  rendering, glsl
ElkEngine
Simple graphics engine used as submodule in many of my projects
Stars: ✭ 54 (+68.75%)
Mutual labels:  rendering, glsl
Glchaos.p
3D GPUs Strange Attractors and Hypercomplex Fractals explorer - up to 256 Million particles in RealTime
Stars: ✭ 590 (+1743.75%)
Mutual labels:  rendering, glsl
Cute Deferred Shading
Cute little deferred shading implementation.
Stars: ✭ 129 (+303.13%)
Mutual labels:  rendering, glsl
osgw
Real-Time Ocean Animation with Gerstner Waves
Stars: ✭ 51 (+59.38%)
Mutual labels:  rendering, glsl
PyGLM
Fast OpenGL Mathematics (GLM) for Python
Stars: ✭ 167 (+421.88%)
Mutual labels:  glsl
Photon-v2
A program that takes photographs of a virtual world.
Stars: ✭ 75 (+134.38%)
Mutual labels:  rendering
OpenMaterial
3D model exchange format with physical material properties for virtual development, test and validation of automated driving.
Stars: ✭ 23 (-28.12%)
Mutual labels:  rendering

GLisph

Quicklisp

Screen Shot

GLisph is a glyph rendering engine using OpenGL shader language. The engine draws string clearly by vector based font rendering on an OpenGL context. TrueType (TTF) is the only drawable format currently.

Usage

Initialize the engine as below first.

(gli:init 800 600)

Load TrueType font file and make glyph table. Glyph table manages the contour points of the glyphs.

(defvar *font* (gli:open-font-loader "/path/to/display-font.ttf")
(defvar *glyph-table* (gli:make-glyph-table *font*))

Then you can regist and draw glyphs!

;;; For CL-GLUT, you should require these display mode keywords before display-window section.
(glut:set-display-mode :stencil :multisample)

;; Before draw section
(defvar *text-buffer*
  (gli:draw *glyph-table*
	  '(:x 120 :y 40 :size 20
	    :text "Hello World!"
			:y 64
			:text "Common Lisp")))

;;; In draw section, you can set some parameters to draw for GLisph context.
(gli:gcolor 0.8 0.2 0.5)

;;; This is rotation example.
(gli:grotate 0.0 0.0 0.5)

;; Render
(gli:render *text-buffer*)

Dependencies

  • cl-annot
  • cl-opengl
  • cl-glu
  • zpb-ttf
  • cl-glut (optional - only required when you test GLisph)

Installation

  • Quicklisp
(ql:quickload :glisph)
  • Roswell
$ ros install glisph
  • Test
(asdf:test-system :glisph)

Author

  • Tamamu

Copyright

Copyright (c) 2017 Tamamu

License

Licensed under the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].