website | twitter

Saturday, October 30, 2004

Meta-Toys Workshop Finished

Eventually, my workshop in Hakodate was finished. It was much valuable experience for me as it is my first time to have a workshop directed myself. The workshop will be a start point for making decision of which goal I should do with Squeak and Croquet. The aim of the workshop is to make a tool just for fun. The major of the students is design; almost students in there had experienced to make digital contents with Photoshop, Illustrator, or Flash. I told them to make not only contents, but also a tool for making dynamic contents, which includes paint tool, music composer, game constructor. Students can regard personal computer as meta-media through this workshop. This is different experience than just use softare. At last, almost 70% students could make some tool in 7 hours, and understood this concept despite of that no students know about Squeak before. By the way, I have uploaded the results of the workshop. Althogh all projects was in Japanese, but probably you can understand aim of the project.

Tuesday, October 26, 2004

Hakodate Workshop

Hakodate is a northern city in Japan. In this week, I am going to have a Squeak workshop at Future University Hakodate. In the fact, this is the first experience to have my own workshop. For the workshop I have planned curriculum and to prepared materials. I am just a programmer, not a teacher, but I believe this workshop should be very helpful to find out my next goal in Sqeuak an Croquet. I know students are not satisfied in just Drive A Car project. They are smart enought and need more interesting subject, but they are not computer science students, so I had to develop different kinds of subject. Also I will use World Stethoscope Morph by Abe-san, and my ODECo morph. At first I considered we use Skeleton or Croquet, but in this time, I abandoned such daring material to be simple enough.

Tuesday, October 19, 2004

Considering Next Goal

Considering Next Goal We discussed about 'meta-toys' which is an idea of curriculum in Squeak workshop. Although I have met much technical issue in Squeak, I have not faced conceptual goal including developers, teachers, and students seriously. Now I have my own workshop in school, so it was good opportunity to think in comprehensive ways. 'meta-toys' is a keyword to show what we have to do. I don't want to make Squeak as PowerPoint or Flash. Squeak would be more meta tools. I had analyzed a lot of interesting projects in Squeak, took some aspects to abstract its nature, and discussed about where is a important point of etoys project.

Sunday, October 17, 2004

Start Jasmine

In these few days, I am porting my work into Jasmine. Although I had to learn new things involved with different idea in Jasmine like 'meta' message, but in general, I feel happy to go Jasmine because developing in Jasmine is very easy as I can use cool debugger of Squeak. Also, most important point is that Jasmine is completely open and we can see current problem of latest image with Mantis bug tracking system Actually, I felt worry about a lot of 'red' rows in Mantis (new bugs). But but tracking system has definitely benefit to see goals clearly.

Wednesday, October 13, 2004

Etoys Project for Meta

I didn't Croquet yesterday, but I developed a project for the idea of meta with Abe-san for next workshop in Hokkaido. What's meta? It is one of the most important ideas of cs. To show the idea, I made a project that objects dance along with scenario showed as arrow symbols in a play field. In this project, the morphs of arrow symbols are considered as programming commands. The point is I could implement a simple programming language using etoys. According to Abe-san, etoys lacks still minor ability for making meta. In instance, we can get first object as first submorph (as car), but we can not get rest objects (as cdr). If we could use such whole list operation, etoys would get more flexible power.

Tuesday, October 12, 2004

Keyboard Control

Croquet was released! We have some discussions in squeak-ja mailing list, too. A lot of people are interested in this new version. I am going to introduce this news in Kansai Open Source Conference next week. Anyway, my today's work was operation with keyboard. Now we can control a soldier character along cursor keys. To realize this feature, what I concerned was where should I put event handling. In normal, event handling is in user camera and each tframe object at pointer, but in the game, we need special keyboard operation like space bar to jump. So I put some trick into TUserCamera >> keyStroke: then I added ability for control general keyboard handling into TSpace. Current my work was about TeaTime Croquet, but I am going to port for jasmine asap. After I collect the change sets of the work, I am going to post these codes (especially, not game specific codes) at mantis.

Monday, October 11, 2004

Animation combination

I tried to merge characters animations. Actually, the basic animation importer was not so interesting work, but from now, the work would be fun as I could move characters freely as a game.

Saturday, October 09, 2004

Drone complete

I have finished the work of basic animation importer for Chain Reaction. Althogh I need more minor fix, I guess it is enough quality as first step. The main problem of Drone was that it includes scale factor. I had to take care of scale value of parent frame when reading position values in animation. In spite of using global coodinate to show vertex, the positions of animation is shown as local. Besides, it is important that these values are only connected to location and scale, but don't connect rotation.

Friday, October 08, 2004


I am working around to import Drone animation. Although it should be easier than soldier, but in the fact, the work is much harder as it has complex tree structure. In soldier animation, object tree is consist of helper and geometry, besides Drone is built of group. It is no problem just in static object, but I guess there are some issues in dynamic animation. (Actually, I couldn't find out why Drone doesn't work well yet).

Tuesday, October 05, 2004

My Mistake of ASE Animation

There was one assumption which led wrong result in 3ds max's ASE Animation viewer. It is that rotation and position could be handled same way. In OpenGL, 4x4 matrix is a uniform method to deal with rotation, thus I could use matrix combination to combine each property. but in ASE, those are completely different aspect. In animation, position is showed as difference from the position at start frame, but rotation is showed as difference from last frame. So I should handle these properties independently.

Saturday, October 02, 2004

ASE Rotation Animation

I had found out how 3ds max exports rotation animation in ASE file. In spite of translations are described the coordinate from original position, but rotations are described the angle as difference from last frame. I found that during I made a lot of simple examples of animation. Other trick is that frames are interpolated as spline curve, and each delta are slight different. So it's very hard to find out the parameters are delta. Anyway, I found another documentation about ASE file in

Friday, October 01, 2004

3DS Max Trial

As I couldn't understand the meaning of ASE file, I installed trial version of 3DS Max again. Actually I have installed it before, and I had to reinstall Windows. It was a good opportunity to clean up because my hard drive is almost full by junk. Perhaps if I have another chance dealing with the 3dsmax, it would be better to have the license, but now what I need is just to know how is the basic concept of 3dsmax and how the inner structure is organized as ascii file. Anyway, to make very very simple example again, I found my misunderstanding about the representation of mesh translation soon. But difficult point is rotation. Showing rotation is something different against quaternion, or simple combination of axis and angle. This work is like cryptanalysis.
Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.