Commit graph

34 commits

Author SHA1 Message Date
65d2d5d248 Add a package for utilities regarding opengl
Currently supported version
gl centric assert and restart macro
2014-11-02 16:52:38 +09:00
b8579526c0 Always call the finalize function when returning from the main loop 2014-09-30 16:07:56 +09:00
d5d0aefbbd Add two utility functions to safely get a list or a single element out of a variable. 2014-09-19 17:17:58 +09:00
4e544af6fc Add two of On Lisp's utility functions: group and once-only 2014-09-19 17:17:25 +09:00
aec779ac7b TODO: Add a render module (incomplete) 2014-09-17 08:37:29 +02:00
563bd7f0f9 Allow load-file function to specify the buffer's type 2014-09-17 08:35:34 +02:00
7eaca6a359 Add helpers to retrieve command line arguments 2014-09-17 08:34:28 +02:00
070f26270e Add a geometry file to the maths module 2014-08-17 21:32:19 +09:00
e47f9c7c05 Add simple maths functions
lerp, clamp, deg-to-rad and rad-to-deg
2014-08-17 21:31:37 +09:00
3f317bb1da Add unit tests for matrices 2014-08-17 21:31:37 +09:00
04544e9742 Add specialized matrix types for float matrices 2014-08-17 21:31:37 +09:00
a2b8b9da8c Generic matrix submodule for the maths module
Like the vector submodule, it implements + - * operations for matrix, scalar and
vector where it makes sense but don't try yet to be efficient.

There is also matrix constructors for null and identity matrices and
row, col and diag subsets functions.
2014-08-17 21:31:16 +09:00
c3c94fb9b2 Add unit tests for maths module (vectors) 2014-08-17 21:30:51 +09:00
7731809a8a Add specialized vector types for float vectors 2014-08-17 21:30:50 +09:00
48d6456f0e Maths module with a generic vector submodule.
Simple vector and scalar operations are supported like + - * / but
without any optimization whatsoever to keep it generic and simple for now.

A swizzle function to get a new vector out of a subset of the original
vector's attributes is also added.

A lengthsq and length function is also provided.
2014-08-17 21:30:08 +09:00
ac95e5b186 Define module's hooks with defparameter
When I need to recompile everything, the hooks should be emptied out.
2014-08-17 12:06:05 +09:00
8107c9b76c Reimplemented the job system using a waitqueue
Job threads now wait on the waitqueue for new jobs to arrive
2014-08-17 12:06:05 +09:00
8584d5ea91 Add wrapper over sbcl's implementation of waitqueue 2014-08-14 16:43:43 +09:00
11f65bdb09 Move swank related code to a new debug module 2014-08-14 16:43:07 +09:00
230566830d Add a function to query the name of a thread 2014-08-13 18:15:12 +09:00
c213413fb9 Add a declaim for compiling code with max debug and safety 2014-08-13 18:14:41 +09:00
246668c4cc fix the way we break from the main loop 2014-08-13 18:14:18 +09:00
a10a88f6bc Add a module for file loading / writing 2014-01-22 00:16:25 +09:00
4a7ecc072c Add a function to quit the main loop 2014-01-22 00:16:25 +09:00
282ebf2f44 Hook the job system to the module initialization process 2014-01-22 00:16:25 +09:00
146d58f591 Add a module system for initialization and update of all kind of modules 2014-01-22 00:16:25 +09:00
56ed6cb02a Add a job system based on multithreading 2014-01-22 00:15:20 +09:00
981590f246 Add thread-safe queue and stack classes to containers file 2014-01-22 00:12:07 +09:00
042e525af2 Add a wrapper to the lisp implementation's thread library
The interface is based on sbcl's sb-thread module.
2014-01-22 00:12:07 +09:00
8ff1d22ab5 Add simple queue and stack classes 2014-01-22 00:12:06 +09:00
f6f7a8a512 Add standard anaphoric macros aif and awhen 2014-01-22 00:12:06 +09:00
3c0b452d24 Add a clock structure and a way to get the current clock time. 2014-01-22 00:12:06 +09:00
9a0872cd33 Add a simple protectable main loop
If an error occurs, a `continue' restart can be invoked to resume the
program execution.
Also, if the main loop is called through the slime repl, it will still
be able to run on the main thread.
2014-01-05 19:31:10 +09:00
0d5ab4faa9 Initial Commit: bootstrap project with cl-project 2014-01-02 20:56:35 +09:00