gacela.git
23 months agoMerge branch 'release/0.6' master
Javier Sancho [Mon, 24 Apr 2017 18:14:55 +0000 (20:14 +0200)]
Merge branch 'release/0.6'

23 months agoMerge branch 'feature/composition' into develop
Javier Sancho [Mon, 24 Apr 2017 18:14:11 +0000 (20:14 +0200)]
Merge branch 'feature/composition' into develop

23 months agoA lot of composition examples
Javier Sancho [Mon, 24 Apr 2017 18:13:20 +0000 (20:13 +0200)]
A lot of composition examples

23 months agoScale support variations over time
Javier Sancho [Mon, 24 Apr 2017 18:12:52 +0000 (20:12 +0200)]
Scale support variations over time

23 months agoKeep SDL context open
Javier Sancho [Mon, 24 Apr 2017 18:11:11 +0000 (20:11 +0200)]
Keep SDL context open

23 months agoExample with a composition
Javier Sancho [Mon, 24 Apr 2017 15:59:44 +0000 (17:59 +0200)]
Example with a composition

23 months agoEnable transparency
Javier Sancho [Mon, 24 Apr 2017 15:59:15 +0000 (17:59 +0200)]
Enable transparency

23 months agoComposing scenes
Javier Sancho [Mon, 24 Apr 2017 15:48:12 +0000 (17:48 +0200)]
Composing scenes

2 years agoMerge tag '0.5' into develop
Javier Sancho [Thu, 20 Apr 2017 23:41:16 +0000 (01:41 +0200)]
Merge tag '0.5' into develop

0.5

2 years agoMerge branch 'release/0.5'
Javier Sancho [Thu, 20 Apr 2017 23:41:06 +0000 (01:41 +0200)]
Merge branch 'release/0.5'

2 years agoMerge branch 'feature/animations' into develop
Javier Sancho [Thu, 20 Apr 2017 23:40:35 +0000 (01:40 +0200)]
Merge branch 'feature/animations' into develop

2 years agoExample with animations
Javier Sancho [Thu, 20 Apr 2017 23:40:07 +0000 (01:40 +0200)]
Example with animations

2 years agoMoving scenes
Javier Sancho [Thu, 20 Apr 2017 23:39:14 +0000 (01:39 +0200)]
Moving scenes

2 years agoRename bitmap -> image and stretch -> scale
Javier Sancho [Thu, 20 Apr 2017 22:23:04 +0000 (00:23 +0200)]
Rename bitmap -> image and stretch -> scale

2 years agoMerge tag '0.4' into develop
Javier Sancho [Tue, 18 Apr 2017 18:13:38 +0000 (20:13 +0200)]
Merge tag '0.4' into develop

0.4

2 years agoMerge branch 'release/0.4'
Javier Sancho [Tue, 18 Apr 2017 18:13:30 +0000 (20:13 +0200)]
Merge branch 'release/0.4'

2 years agoMerge branch 'feature/stretch-images' into develop
Javier Sancho [Tue, 18 Apr 2017 18:09:49 +0000 (20:09 +0200)]
Merge branch 'feature/stretch-images' into develop

2 years agoStretch scene
Javier Sancho [Tue, 18 Apr 2017 18:08:55 +0000 (20:08 +0200)]
Stretch scene

2 years agoDisplay images using OpenGL and textures
Javier Sancho [Wed, 12 Apr 2017 16:40:48 +0000 (18:40 +0200)]
Display images using OpenGL and textures

2 years agoReplace tabs with spaces
Javier Sancho [Thu, 30 Mar 2017 23:09:22 +0000 (01:09 +0200)]
Replace tabs with spaces

2 years agoMerge tag '0.3.1' into develop
Javier Sancho [Mon, 27 Mar 2017 22:57:16 +0000 (00:57 +0200)]
Merge tag '0.3.1' into develop

0.3.1

2 years agoMerge branch 'hotfix/0.3.1'
Javier Sancho [Mon, 27 Mar 2017 22:57:05 +0000 (00:57 +0200)]
Merge branch 'hotfix/0.3.1'

2 years agoStore all events when lag is produced
Javier Sancho [Mon, 27 Mar 2017 22:56:26 +0000 (00:56 +0200)]
Store all events when lag is produced

2 years agoMerge tag '0.3' into develop
Javier Sancho [Fri, 3 Mar 2017 16:11:20 +0000 (17:11 +0100)]
Merge tag '0.3' into develop

0.3

2 years agoMerge branch 'release/0.3'
Javier Sancho [Fri, 3 Mar 2017 16:11:11 +0000 (17:11 +0100)]
Merge branch 'release/0.3'

2 years agoMore keyboard events
Javier Sancho [Fri, 3 Mar 2017 16:08:15 +0000 (17:08 +0100)]
More keyboard events

2 years agoMerge tag '0.2' into develop
Javier Sancho [Tue, 14 Feb 2017 19:16:30 +0000 (20:16 +0100)]
Merge tag '0.2' into develop

0.2

2 years agoMerge branch 'release/0.2'
Javier Sancho [Tue, 14 Feb 2017 19:16:21 +0000 (20:16 +0100)]
Merge branch 'release/0.2'

2 years agoMerge branch 'feature/event_driven_programming' into develop
Javier Sancho [Tue, 14 Feb 2017 19:13:42 +0000 (20:13 +0100)]
Merge branch 'feature/event_driven_programming' into develop

2 years agoCustomizing quit event behaviour
Javier Sancho [Tue, 14 Feb 2017 19:10:33 +0000 (20:10 +0100)]
Customizing quit event behaviour

2 years agoWrite window declarations using a syntax
Javier Sancho [Tue, 14 Feb 2017 00:01:59 +0000 (01:01 +0100)]
Write window declarations using a syntax

2 years agoChange import-bitmap with bitmap
Javier Sancho [Sun, 12 Feb 2017 12:12:47 +0000 (13:12 +0100)]
Change import-bitmap with bitmap

2 years agoWindow scene
Javier Sancho [Sat, 4 Feb 2017 01:02:44 +0000 (02:02 +0100)]
Window scene

2 years agoQuit game support
Javier Sancho [Thu, 19 Jan 2017 19:19:29 +0000 (20:19 +0100)]
Quit game support

2 years agoReorganize examples
Javier Sancho [Thu, 19 Jan 2017 15:49:37 +0000 (16:49 +0100)]
Reorganize examples

2 years agoHello world example
Javier Sancho [Thu, 19 Jan 2017 00:05:11 +0000 (01:05 +0100)]
Hello world example

2 years agoImages in development
Javier Sancho [Mon, 17 Oct 2016 16:09:08 +0000 (18:09 +0200)]
Images in development

2 years agoImages in development
Javier Sancho [Wed, 28 Sep 2016 15:36:18 +0000 (17:36 +0200)]
Images in development

2 years agoFran example using scenes
Javier Sancho [Fri, 9 Sep 2016 17:27:39 +0000 (19:27 +0200)]
Fran example using scenes

2 years agoRoot file for the module
Javier Sancho [Fri, 9 Sep 2016 17:27:21 +0000 (19:27 +0200)]
Root file for the module

2 years agoPrimitive game loop with some basic scenes
Javier Sancho [Fri, 9 Sep 2016 17:26:20 +0000 (19:26 +0200)]
Primitive game loop with some basic scenes

2 years agoSome maths
Javier Sancho [Fri, 9 Sep 2016 17:24:47 +0000 (19:24 +0200)]
Some maths

2 years agoEnvironment for execution without previous installation
Javier Sancho [Fri, 9 Sep 2016 17:12:17 +0000 (19:12 +0200)]
Environment for execution without previous installation

2 years agoScene type and basic functions
Javier Sancho [Fri, 9 Sep 2016 17:08:08 +0000 (19:08 +0200)]
Scene type and basic functions

2 years agoEnvironment for execution without previous installation
Javier Sancho [Sat, 6 Aug 2016 06:27:33 +0000 (08:27 +0200)]
Environment for execution without previous installation

2 years agoFirst reactive example
Javier Sancho [Fri, 5 Aug 2016 23:12:29 +0000 (01:12 +0200)]
First reactive example

2 years agoInterface for guile-opengl and particle system example
Javier Sancho [Thu, 23 Jun 2016 00:07:19 +0000 (02:07 +0200)]
Interface for guile-opengl and particle system example

2 years agoTrash
Javier Sancho [Thu, 23 Jun 2016 00:03:28 +0000 (02:03 +0200)]
Trash

3 years agoTests for entities and components
Javier Sancho [Fri, 11 Mar 2016 16:49:03 +0000 (17:49 +0100)]
Tests for entities and components

* tests/entities.scm: Tests for creating entities

3 years agoAdding REPL cooperative server to the engine loop
Javier Sancho [Fri, 3 Jul 2015 14:58:14 +0000 (16:58 +0200)]
Adding REPL cooperative server to the engine loop

* src/engine.scm: Function start-engine has an optional socket parameter
                  for starting a REPL and accessing from an external
                  thread

4 years agoExperimenting with syntax
Javier Sancho [Tue, 11 Nov 2014 12:35:07 +0000 (13:35 +0100)]
Experimenting with syntax

* games/asteroids/asteroids.scm: Experimenting with syntax for games

4 years agoMore declarative way of making games
Javier Sancho [Tue, 16 Sep 2014 13:37:49 +0000 (15:37 +0200)]
More declarative way of making games

* src/examples/asteroids.scm: Declarative asteroids game

* src/game.scm: Functions renamed to a more declarative way, erasing
                'make-'

5 years agoPreparing skeleton for engines, systems, etc
Javier Sancho [Thu, 17 Apr 2014 09:55:55 +0000 (11:55 +0200)]
Preparing skeleton for engines, systems, etc

* engines/arcade.scm: First engine for developing arcade games

* examples/asteroids.scm: Asteroids game, with two ways of make a game

* game.scm: New structure that contains the engine and all the entities
            with their initial state

* systems/opengl.scm: First system for displaying entities using opengl
                      libraries

5 years agoComponents with similar headers to functions
Javier Sancho [Thu, 3 Apr 2014 07:36:16 +0000 (09:36 +0200)]
Components with similar headers to functions

* src/system.scm: Support to #:optional and #:key when defining new
                  components with define-component

5 years agoEntity sets and engine api through systems
Javier Sancho [Thu, 27 Feb 2014 14:31:16 +0000 (15:31 +0100)]
Entity sets and engine api through systems

* src/system.scm: entities and components in a cons-pair of two hash
                  tables and systems returning entities changes
                  directly

* src/engine.scm: modifying an engine is possible only using systems
                  and each system modify engine entities when runs

* src/examples/entity-componentfunctions.scm,
  src/examples/making-systems.scm,
  src/examples/composing-systems.scm,
  src/examples/engine-conway-game.scm:
        modifications for correct execution with the new state of art

5 years agoConway Game Engine
Javier Sancho [Sun, 16 Feb 2014 16:25:07 +0000 (17:25 +0100)]
Conway Game Engine

5 years agoImproving engine exit
Javier Sancho [Sun, 26 Jan 2014 16:23:58 +0000 (17:23 +0100)]
Improving engine exit

* src/engine.scm: Problem with ^C for aborting engine execution
                  solved.

5 years agoNew way for returning results from systems
Javier Sancho [Tue, 14 Jan 2014 17:58:39 +0000 (18:58 +0100)]
New way for returning results from systems

* src/system: New type entities-changes that encapsulates entities
              modifications. A system that only does I/O operations
              doesn't must to return an entities-changes object.

* src/examples/composing-systems.scm: Updated example

* src/examples/making-systems.scm: Updated example

5 years agoDo step duration properly
Javier Sancho [Mon, 13 Jan 2014 05:51:52 +0000 (06:51 +0100)]
Do step duration properly

* src/engine.scm: use step start time and end time for calculating
                  delay and step duration

* src/misc.scm: new function 'current-utime' that gets current time
                in microseconds

5 years agoSupport for engine properties
Javier Sancho [Tue, 7 Jan 2014 05:56:00 +0000 (06:56 +0100)]
Support for engine properties

* src/engine.scm: new functions get-property and set-property! allow
                  interaction with properties stored in entities

5 years agoComposed systems return as single systems
Javier Sancho [Sun, 29 Dec 2013 06:59:23 +0000 (07:59 +0100)]
Composed systems return as single systems

* src/system.scm: systems created by join or threaded must return a
                  procedure for modify entities an components and must
                  be non-destructive, so alist-copy is used when modifications
                  are calculated

5 years agoRepairing composing systems example
Javier Sancho [Sun, 29 Dec 2013 06:55:05 +0000 (07:55 +0100)]
Repairing composing systems example

* src/examples/composing-systems.scm: used the old way of making systems with a lambda; current way is similar to let syntax

5 years agoSet engine systems while running
Javier Sancho [Sun, 8 Dec 2013 06:11:34 +0000 (07:11 +0100)]
Set engine systems while running

* src/engine.scm: new function set-engine-systems! using engine mutex
                  for avoiding concurrency errors

* src/system.scm: new function group-systems, that returns joined
                  systems or an empty system, depending on arguments

5 years agoEngine Execution
Javier Sancho [Sun, 17 Nov 2013 07:32:23 +0000 (08:32 +0100)]
Engine Execution

* src/engine.scm: Engine execution with inner properties for looping
                  delay and other future parameters. Mutexes are used
                  to prevent accessing entities and engines in an
                  undesired way.

5 years agoImproving with-engine
Javier Sancho [Sun, 3 Nov 2013 14:42:25 +0000 (15:42 +0100)]
Improving with-engine

* src/engine.scm: with-engine now saves current engine for recursive
                  calls and uses engine mutex for exclusive access

5 years agoEngine Access Protocol Interface
Javier Sancho [Sun, 20 Oct 2013 19:50:00 +0000 (21:50 +0200)]
Engine Access Protocol Interface

* src/engine.scm: functions for accessing and modifying engine
                  entities, using a mutex for preventing changes
                  collission if the engine is running

* src/system.scm: now every function that modify entities returns
                  the result of the modification with the resulting
                  entities and components

5 years agoEngine definition functions
Javier Sancho [Mon, 7 Oct 2013 15:55:14 +0000 (17:55 +0200)]
Engine definition functions

* src/engine.scm: functions for creating new engines (make-engine,
  define-engine) and for working with entities and components
  inside them (with-engine)

5 years agoMore verbose and powerful system definition
Javier Sancho [Sun, 6 Oct 2013 06:53:14 +0000 (08:53 +0200)]
More verbose and powerful system definition

* src/examples/making-systems.scm: Examples redefined

* src/system.scm: System definitions with more than one components grouping
  and without requiring a function directly

5 years agoReplace define-macro with define-syntax
Javier Sancho [Wed, 2 Oct 2013 16:06:12 +0000 (18:06 +0200)]
Replace define-macro with define-syntax

5 years agoFunctions to access entities and components inside systems
Javier Sancho [Sat, 14 Sep 2013 06:27:46 +0000 (08:27 +0200)]
Functions to access entities and components inside systems

* src/system.scm: get-key
                  get-component

* src/examples/making-systems.scm: access functions testing

5 years agoMaking systems with macros instead functions. Now, we have define-system and make...
Javier Sancho [Wed, 11 Sep 2013 05:13:43 +0000 (07:13 +0200)]
Making systems with macros instead functions. Now, we have define-system and make-system.

5 years agoBetter examples
Javier Sancho [Mon, 9 Sep 2013 04:54:07 +0000 (06:54 +0200)]
Better examples

5 years agoMore verbose mode for working with entities and components; assoc
Javier Sancho [Wed, 4 Sep 2013 16:30:35 +0000 (18:30 +0200)]
More verbose mode for working with entities and components; assoc
lists no more needed

* src/system.scm: entities/components functions now return a function
                  for changing the entity/component structure

* src/test.scm: functions testing adapted to new scheme

5 years agoMore verbose mode for working with entities and components; assoc
Javier Sancho [Thu, 22 Aug 2013 09:05:28 +0000 (11:05 +0200)]
More verbose mode for working with entities and components; assoc
lists no more needed

* src/system.scm: entities/components functions now return a function
                  for changing the entity/component structure

* src/test.scm: functions testing adapted to new scheme

5 years agoFunctions to merge systems, using a linear way or using threads
Javier Sancho [Wed, 21 Aug 2013 06:15:09 +0000 (08:15 +0200)]
Functions to merge systems, using a linear way or using threads

* src/system.scm: join-systems
                  threaded-systems

* src/test.scm: merge functions testing

5 years agoIt's not obligatory to write type components at declarations; if
Javier Sancho [Thu, 8 Aug 2013 19:39:47 +0000 (21:39 +0200)]
It's not obligatory to write type components at declarations; if
component is a Gacela component (a special record), type is detected
automatically.

* src/system.scm: normalize-components - returns a list with pairs
  (type . component)

5 years agoMaking systems; systems return a lambda function for process
Javier Sancho [Thu, 8 Aug 2013 04:59:48 +0000 (06:59 +0200)]
Making systems; systems return a lambda function for process
modifications at entities and components

* src/system.scm: set-entities

* src/test.scm: system functions testing

5 years agoMaking systems; systems return a lambda function for process
Javier Sancho [Sun, 28 Jul 2013 14:49:26 +0000 (16:49 +0200)]
Making systems; systems return a lambda function for process
modifications at entities and components

* src/system.scm: set-entity
                  set-entity-components

* src/test.scm: system functions testing

5 years agoMaking systems; systems return a lambda function for process
Javier Sancho [Mon, 22 Jul 2013 05:27:00 +0000 (07:27 +0200)]
Making systems; systems return a lambda function for process
modifications at entities and components

* src/system.scm: remove-entity

* src/test.scm: system functions testing

5 years agoMaking systems; systems return a lambda function for process
Javier Sancho [Fri, 12 Jul 2013 13:42:58 +0000 (15:42 +0200)]
Making systems; systems return a lambda function for process
modifications at entities and components

* src/system.scm: export-component
                  new-entity

* src/test.scm: system functions testing

5 years agoMaking systems; preprocessing entities and components data for game
Javier Sancho [Thu, 27 Jun 2013 09:28:13 +0000 (11:28 +0200)]
Making systems; preprocessing entities and components data for game
systems

* src/system.scm: find-entities-by-components
                  make-system

5 years agoStructures for managing entities and components, using mutex for
Javier Sancho [Wed, 5 Jun 2013 13:58:38 +0000 (15:58 +0200)]
Structures for managing entities and components, using mutex for
future synchronization with game loop

* src/gacela.scm: entity
                  get-entity

5 years agoComponent definitions support using Guile records
Javier Sancho [Wed, 5 Jun 2013 09:22:33 +0000 (11:22 +0200)]
Component definitions support using Guile records

* src/system.scm: define-component
                  get-component-type

5 years agoPreparing new version 0.6
Javier Sancho [Fri, 31 May 2013 11:38:08 +0000 (13:38 +0200)]
Preparing new version 0.6

5 years agoPreparing new version 0.6
jsancho [Fri, 31 May 2013 08:36:21 +0000 (10:36 +0200)]
Preparing new version 0.6

5 years agoAdding freeimage
Javier Sancho [Mon, 29 Apr 2013 04:51:12 +0000 (06:51 +0200)]
Adding freeimage

5 years agoUsing guile-figl
Javier Sancho [Sun, 28 Apr 2013 15:43:18 +0000 (17:43 +0200)]
Using guile-figl

6 years agoUsing guile-figl
Javier Sancho [Sun, 10 Mar 2013 16:39:55 +0000 (17:39 +0100)]
Using guile-figl

6 years agoUsing guile-figl
Javier Sancho [Mon, 4 Mar 2013 07:57:29 +0000 (08:57 +0100)]
Using guile-figl

6 years agoNew modules figl
Javier Sancho [Sun, 24 Feb 2013 18:21:03 +0000 (19:21 +0100)]
New modules figl

6 years agoColor management integration with meshes
Javier Sancho [Wed, 17 Oct 2012 19:00:53 +0000 (21:00 +0200)]
Color management integration with meshes

6 years agoDrawing circles
Javier Sancho [Sat, 13 Oct 2012 13:29:48 +0000 (15:29 +0200)]
Drawing circles

6 years agoNew picture mesh using resources cache
Javier Sancho [Tue, 9 Oct 2012 16:42:15 +0000 (18:42 +0200)]
New picture mesh using resources cache

6 years agoTexture primitive.
Javier Sancho [Mon, 8 Oct 2012 19:24:41 +0000 (21:24 +0200)]
Texture primitive.

6 years agoPrimitives definition (for meshes)
Javier Sancho [Thu, 27 Sep 2012 22:52:27 +0000 (00:52 +0200)]
Primitives definition (for meshes)

6 years agoCatching errors from main loop and square meshes
Javier Sancho [Mon, 24 Sep 2012 19:07:37 +0000 (21:07 +0200)]
Catching errors from main loop and square meshes

6 years agoMeshes located at video module and new game loop procedure returning game elements
Javier Sancho [Fri, 21 Sep 2012 18:21:08 +0000 (20:21 +0200)]
Meshes located at video module and new game loop procedure returning game elements

6 years agoControllers list for views
Javier Sancho [Mon, 17 Sep 2012 05:34:11 +0000 (07:34 +0200)]
Controllers list for views

6 years agoDefining views with controllers and meshes
Javier Sancho [Thu, 13 Sep 2012 05:42:05 +0000 (07:42 +0200)]
Defining views with controllers and meshes

6 years agoMain loop with recursivity
Javier Sancho [Sun, 9 Sep 2012 06:59:53 +0000 (08:59 +0200)]
Main loop with recursivity