Wednesday, October 09, 2013

ADL Sandbox project and Virtual World Framework



I am very excited with the ADL Sandbox project and Virtual World Framework at all, and that it is available in open source to experiment with.
By the way, I am from Smalltalk world and an acceptor of OpenCroquet architecture, which has it's own history. OpenCroquet in it's latest form of OpenQwaq take all the features and benefits from the platform being realized on (the open source Smalltalk language dialect Squeak).
But, Virtual World Framework goes further now, especially in moving from class based language architecture to prototypes, that gives a shared code and behaviours used in distributed computation, to be modified at runtime!
So, that's one of the main criteria, I am start moving now from OpenCroquet to Virtual World Framework, despite of sadness of parting with all the benefits of Smalltalk language and it's IDE, comparable to JavaScript and Ruby. Although, I have the insights of looking a Smalltalk language as a DSL language for Virtual World Framework in the future (for example as Seaside web framework for HTML and JavaScript).
ADL Sandbox project uses already one JavaScript language for all stuff.  And one interesting thing to realize in it is having OMeta'JS workspace inside Sandbox script editor, which will allow to define own language's grammar and replicate it through the application instances, then have a running scripts on that shared grammar. Almost all JavaScript language dynamic capabilities will be used in distributed computation then. For example, you could have all the languages down from Logo (Turtle graphics) to Smalltalk available for scripting the virtual world just in the Web browser.
More over the integration between LivelyKernel and Virtual World Framework will give the endless capabilities of in browser project development and editing.
So, I have started using the ADL Sandbox project and Virtual World Framework to build a Virtual Learning Environment for modern mathematics and phisics, exploring the new ways of developing the concrete tools for modelling, rendering and interaction with the content of the virtual world.
Will post about the progress here.

Sunday, July 28, 2013

Curved Space Explorer for Squeak



Want to introduce the Curved Space Explorer for Squeak project,  known as CCSE by Krestianstvo SDK.
It is a Smalltalk port version of Curved Spaces, originally developed by Jeff Weeks (geometrygames.org) in C language.
This Squeak version is derived from Krestianstvo SDK project's version, where Curved Space Explorer is collaborative in it's nature and available mainly for distributed computation.
The aim of this project is to make Curved Space Explorer in Smalltalk being available for the large Smalltalk audience and mainstream Squeak distribution, so that anybody interested could work with it.
The project is Open Source and the code is available here: http://sdk.krestianstvo.org/sdk/ccse.html


To run the CCSE you need to download the latest Squeak distribution from the official sitehttp://ftp.squeak.org/4.4/Squeak-4.4-All-in-One.zip
Also I recommend to use the latest Smalltalk CogVM from the http://www.mirandabanda.org/files/Cog/VM/
and in the running image, execute in the workspace:

"1. Load FFI"

(Installer repository: 'http://source.squeak.org/FFI')   
 install: 'FFI-Pools';   
 install: 'FFI-Kernel';    
install: 'FFI-Tests'.

"2. Load 3DTransform "

(Installer repository: 'http://www.squeaksource.com/CroquetGL')
    install: '3DTransform'.

"3. Load OpentGL and CCSE"

(Installer repository: 'http://sdk.krestianstvo.org/sdk/ccse')
    install: 'OpenGL-Pools';
    install: 'OpenGL-Core';
    install: 'OpenGL-NameManager';
    install: 'CCSpaceExplorer'.

"4. Run sample application"

CCSEMorphRender runApp

" Help

In running application there are some options available using the keyboard and mouse:

"up" and "down" arrows on the keyboard - speed of the ship movement
"left" and "right" arrows on the keyboard - change aperture

mouse move with left button pressed - rotation of the ship
mouse move with left button pressed and shift pressed - translation of the ship

press "o" on keyboard - switch between "head" and "body" rotation
press "p" on keyboard - switching on stereo (anaglyph) mode
press "l" on keyboard - switching shaders support (only for Mac OS X for now)

"


Also you can use the preinstalled image from here: http://krestianstvo.org/sdk/Squeak4.4-12327-ccse.zip

Happy exploring!

OpenGL procedural textures generator (by David Faught) for Squeak 4.4

Repost from mail list to blog



I have successfully proceeded in running TweakCore on the recent Squeak 4.4 trunk image (from Jenkins).
And one of the famous existed applications developed in Tweak is the OpenGL procedural textures generator by David Faught.
I make it also loadable to the current Squeak.  

You could download the ready to run image from here: http://krestianstvo.org/TweakCoreOpenGL-squeak44.zip
or
execute in the workspace in own image:

"1. Load FFI"
(Installer repository: 'http://source.squeak.org/FFI')
    install: 'FFI-Pools';
    install: 'FFI-Kernel';
    install: 'FFI-Tests'..

"2. Load CroquetGL " 
(Installer repository: 'http://www.squeaksource.com/CroquetGL')
    install: '3DTransform';
    install: 'OpenGL-Pools';
    install: 'OpenGL-Core'.

"3. Load TweakCore and Procedural textures application for Tweak"
(Installer repository: 'http://sdk.krestianstvo.org/sdk/inbox')
    install: 'tweakcore';
    install: 'Tweak-OpenGL-sn.3'.

"4. Set the default settings in Tweak"    
CDefaultWidgetLibrary setDefaultSettings.

"5. Run one of two examples"
CProjectMorph open: Wrinkle1.
"or"
CProjectMorph open: Wrinkle2.

The attached screenshot shows the running application. 

Regards,
Nikolay