Sign in Join
Wiki copytemporary

ZenGL: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11## About
22
33**ZenGL** - a cross-platform game development library, designed to provide necessary functionality for rendering 2D graphics, handling input, sound output, etc.
44
55- **Supported OS**: GNU/Linux, Windows, macOS, iOS, Android 2.1+
66
77- **Supported compilers**: [[Free Pascal]], [[Delphi]]
88
99- **Graphics API**: [[OpenGL]], OpenGL ES 1.x, Direct3D 8/9
1010
1111- **Sound API**: OpenAL, DirectSound
1212
1313- **License**: zlib
1414
1515- **Authors**: Andrey "Andru" Kemka, Sergey "Seenkao" Shutkin
1616
1717## Links
1818
1919- [Download ZenGL before version 3.12](https://code.google.com/archive/p/zengl/)
2020- [ZenGL Mirror on GitHub](https://github.com/skalogryz/zengl)
2121- [Bugtracker](http://code.google.com/p/zengl/issues/list)
2222
2323---
2424
2525- [ZenGL up to version 4.2 (version 4.2 has been archived and not tested, see version on SourceForge)](https://github.com/Seenkao/New-ZenGL)
2626- [SourceForge - ZenGL 4.2 and higher source code](https://sourceforge.net/projects/new-zengl/)
2727
2828## Tutorial
2929
3030**Attention!** All examples are contained in the downloaded version of the library. At this time, this is relevant for all versions of ZenGL. These tutorials are not fully compatible with the latest version of ZenGL.
3131
3232[[ZenGL Tutorial]]: This is a first tutorial for ZenGL: download, installation, source paths, compilation (statically or with so/dll/dylib) (Windows dll), and the First program 'Initialization' that comes with ZenGL.
3333
3434[[ZenGL Tutorial 2]]: This is the second tutorial on how to create a font and draw text in the window.
3535
3636## Features
3737
38-` * `**`Main`**\
39-`   o can be used as so/dll/dylib or statically compiled with your application `\
40-`   o rendering to own or any other prepared window`\
41-`   o logging`\
42-`   o resource loading from files, memory and `**`zip`**` archives`\
43-`   o multithreaded resource loading`\
44-`   o easy way to add support for new resource format`\
45-` * `**`Configuration of`**\
46-`   o antialiasing, screen resolution, refresh rate and vertical synchronization`\
47-`   o aspect correction`\
48-`   o title, position and size of window`\
49-`   o cursor visibility in window space`\
50-` * `**`Input`**\
51-`   o handling of keyboard, mouse and joystick input`\
52-`   o handling of Unicode text input`\
53-`   o possibility to restrict the input to the Latin alphabet`\
54-` * `**`Textures`**\
55-`   o supports `**`tga`**`, `**`png`**`, `**`jpg`**` and `**`pvr`**\
56-`   o correct work with NPOT textures`\
57-`   o control the filter parameters`\
58-`   o masking`\
59-`   o `*`render targets`*` for rendering into texture`\
60-` * `**`Text`**\
61-`   o textured Unicode font`\
62-`   o rendering UTF-8 text`\
63-`   o rendering text with alignment and other options like size, color and count of symbols`\
64-` * `**`2D subsystem`**\
65-`   o `*`batch render`*` for high-speed rendering`\
66-`   o rendering different primitives`\
67-`   o sprite engine`\
68-`   o rendering static and animated sprites and tiles`\
69-`   o rendering distortion grid`\
70-`   o rendering sprites with new texture coordinates (with the pixel dimension and the usual 0..1)`\
71-`   o control the blend mode and color mix mode`\
72-`   o control the color and alpha of vertices of sprites and primitives`\
73-`   o additional sprite transformations (flipping, zooming, vertices offset)`\
74-`   o fast clipping of invisible sprites`\
75-`   o 2D camera with ability to zoom and rotate the scene`\
76-` * `**`Sound`**\
77-`   o works through OpenAL or DirectSound; depends on configuration or OS`\
78-`   o correct work without soundcard`\
79-`   o supports `**`wav`**` and `**`ogg`**` as sound sample formats`\
80-`   o playing audio files in separate thread`\
81-`   o control volume and playback speed`\
82-`   o moving sound sources in 3D space`\
83-` * `**`Video`**\
84-`   o decoding video frames into texture`\
85-`   o supports `**`theora`**` codec in `**`ogv`**` container`\
86-` * `**`Math`**\
87-`   o basic set of additional math functions`\
88-`   o triangulation functions`\
89-`   o basic set of collision functions`\
90-` * `**`Additional`**\
91-`   o reading and writing INI files`\
92-`   o functions for working with files and memory`
38+```text
39+ * Main
40+ o can be used as so/dll/dylib or statically compiled with your application
41+ o rendering to own or any other prepared window
42+ o logging
43+ o resource loading from files, memory and zip archives
44+ o multithreaded resource loading
45+ o easy way to add support for new resource format
46+ * Configuration of
47+ o antialiasing, screen resolution, refresh rate and vertical synchronization
48+ o aspect correction
49+ o title, position and size of window
50+ o cursor visibility in window space
51+ * Input
52+ o handling of keyboard, mouse and joystick input
53+ o handling of Unicode text input
54+ o possibility to restrict the input to the Latin alphabet
55+ * Textures
56+ o supports tga, png, jpg and pvr
57+ o correct work with NPOT textures
58+ o control the filter parameters
59+ o masking
60+ o render targets for rendering into texture
61+ * Text
62+ o textured Unicode font
63+ o rendering UTF-8 text
64+ o rendering text with alignment and other options like size, color and count of symbols
65+ * 2D subsystem
66+ o batch render for high-speed rendering
67+ o rendering different primitives
68+ o sprite engine
69+ o rendering static and animated sprites and tiles
70+ o rendering distortion grid
71+ o rendering sprites with new texture coordinates (with the pixel dimension and the usual 0..1)
72+ o control the blend mode and color mix mode
73+ o control the color and alpha of vertices of sprites and primitives
74+ o additional sprite transformations (flipping, zooming, vertices offset)
75+ o fast clipping of invisible sprites
76+ o 2D camera with ability to zoom and rotate the scene
77+ * Sound
78+ o works through OpenAL or DirectSound; depends on configuration or OS
79+ o correct work without soundcard
80+ o supports wav and ogg as sound sample formats
81+ o playing audio files in separate thread
82+ o control volume and playback speed
83+ o moving sound sources in 3D space
84+ * Video
85+ o decoding video frames into texture
86+ o supports theora codec in ogv container
87+ * Math
88+ o basic set of additional math functions
89+ o triangulation functions
90+ o basic set of collision functions
91+ * Additional
92+ o reading and writing INI files
93+ o functions for working with files and memory
94+```
9395
9496## In the updated version
9597
9698**Attention!** Basic information in Russian! Thank you for understanding.
9799
98100- Corrected compilation for android for FPC 3.2.0 and higher.
99101- Moved the main code to correct the library
100102- Edited work with Windows 64
101103- Fixed minor bugs
102104- Edited some demo versions (for FPC and iOS demos were not corrected, demo versions for Lazarus and Delphi were revised)
103105- Introduced defines
104106 - define USE_EXIT_ESCAPE - exit. Ability not to write additional code to exit the program by pressing the Escape key
105107 - USE_INIT_HANDLE definition - for using ZenGL in an already created window (LCL/VCL)
106108- Introduced support for MacOS Cocoa
107109
108110Documentation is maintained inside ZenGL modules in Russian and English.
109111
110112Also see the updates in the file *Update _ZenGL.txt* (in Russian).
111113
112114---
113115*From the Free Pascal wiki, page "ZenGL", as it stood on 2023-09-30 after a change by Seenkao, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
114116Category: Audio
115117Category: Components
116118Category: Game Development
117119Category: Games
118120Category: Graphics
119121Category: Multimedia
120122Category: Video

Back to history