website | twitter

Friday, January 14, 2005

Two Teapot in One Squeak

I posted a change set at mantis http://bugs.impara.de/view.php?id=831 for running two Teapot in one image. Sometimes I am asked why ODE doesn't work well through network, but I didn't investigate deeply because it is a pain to set up two PC for debugging network. Also, I tried to run two images in one PC, but it doesn't work well. If one image is running, another would be stop. So I decided to run two croquet in one image.

Wednesday, January 05, 2005

Super Parts Bin

I made a special parts bin named "Super Parts bin". You can get morphs made by other guys from network. It is named after "Super Swiki", which is a mechanism to share project through network. The reason I made it is because I feel a project is too large to share individual's idea each other. If you could share a morph freely, You can make a collaborative project more easily. In this image, http://metatoys.org/tmp/2005-01-05.zip "LanguageGame" flap tab in right hand is connected my home server. So you can share any morph to drag-n-drop. The image is based on Japanese, but you can change language to push a button of earth in an orange flap.

Thursday, December 23, 2004

Japanese Font

I have almost fixed problems related with Japanese font in Squeak 3.8. These are very complicated, but what is good for me is I could be familiar with font mechanism. The main issue around showing font is how characters should be shown in any rectangle beautifully. Before I fixed, Japanese characters were shown roughly and sometimes tearing. This is because Japanese font is shown implicitly when Japanese character is appeared even if a user select Latin font like accuny. I am interested in Font system because Font in Smalltalk has long history. Abe-san said Smalltalk-80 had StrikeFont class same as Squeak. Also, font is very important as one of the design elements. Personally, I think Squeak should handle commercial fonts more easily. Some squeakers says it is enough to use free fonts. But friends of mime who are artists prefer sophisticated commercial fonts, and I want Squeak attracts such art guys. Especially, Japanese free fonts are much few as there has huge amount of characters. Other aspect why I tried around font is I want to reduce my work. Now Japanese version of Squeak is a bit different with latest English distribution. So I have to port my application for Japanese Squeak when I develop some tools in English. That was much boring thing (actually, sometimes I show English version Squeak demos even for Japanese people, but my mother couldn't understand it and complain me...). When my work finished, and basic parts of both Japanese and English Squeak become same, what I need is just prepare a translation data.

Tuesday, December 07, 2004

Textual representation of tile scripting

I couldn't this blog these days because this site was toooo slowly... I am working a lot about etoys these days. Actually, I did not know about etoys well before I had my own etoys workshop because I felt it's ability was too restricted. But I have found that a number of interesting things are remained in the tile scripting system yet. Surely, etoys lacks fancy features as programming language. But I don't think rich system is better system. So I have tried to small improvement etoys without big change. One of my challenges is textual representation of tile scripting. As you know, you can see tile script both as tile and text code (Smalltalk expression). But when you modify the text code, the script would be never seen as tile as the script loses the modified information. I think this is a reason why serious Squeak programmer is not interested in etoys. If tile script is made from textual representation. A programmer could write applications with etoys tile script by Smalltalk code (change set, Monticello, or so). So I have write converter between text and tiles. At first, Smalltalk expression is hard to convert to tiles. And I use S-expression like notation. It works almost well. I am going to make some examples of etoys animation without any drag-n-drop!

Wednesday, November 24, 2004

ODE Again

Now I am updating ODE bridge for Croquet. Bernd send me great ODE demo few month ago for impara Croquet. But I have let it alone up to now. There were much interesting gadgets in Bernd's demo, so I was trying to adapt it for Jasmine. Actually this was not difficult and I am going to upload it soon.

Tuesday, November 16, 2004

LanguageEditor

I am hacking LangageEditor for few days. LanguageEditor and Babel system is one of major feature of new Squeakland image. You can use multiple language in same Squeak. We have to change words of vocabulary for user interface depend on language, the dictionary of Babel is used for it. My goal is to make it easier editing dictionary. Sometimes, a good engineer is not a good writer. So we need a way of collaborating for making dictionary by both user and programmer. Actually current LanguageEditor is not useful because its output file is internal binary format. I think we should able to exchange, make diff, and be under version control. So I decided to make the file as text. Today I could almost finish the task. I use basic file out (chunk) format for dictionary. I'm going to post the fix when I finish the test in Japanese.

Tuesday, November 09, 2004

English first / Japanese first

Now I am writing a paper for C5 conference at next year. My theme is about last workshop and its concept, prospect, and impact of development. At first, I was thinking that I wrote about Croquet, but I couldn't do because the part of what I know about Croquet was too practical. Probably if I am going to use Croquet for actual workshop next year, I can write some article of it. Anyway, I am writing in Japanese. At first I was trying write in English, but I couldn't as my brain was confused. So I decided writing in Japanese first, then translating in English. I don't know sure the way of the writing is better, but the fact is I have not much time.

Sunday, November 07, 2004

ALAN-K

Yesterday, we have a conference named "ALAN-K Project Workshop" for discussing Squeak's curriculum with teachers and developers in Kyoto. Actually, we didn't have enough time to discuss, but it was good opportunity to see how to teach in primary school to high school. What I was most interested in were works by a couple of high school students. In instance, they were making about human powered air plain simulation, and ecosystem simulation; in the simulations, a user could alter each parameter to see what was happen. Other surprised thing was the authors of these works were pretty girls, not nerds wearing glasses. I felt envy the teachers!

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. http://yuri.sakura.ne.jp/~propella/hakodate/hakodateProjects.zip

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 http://bugs.impara.de/. 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. http://languagegame.no-ip.com/pub/combi-2004-10-11.avi

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

Drone

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 http://cs.felk.cvut.cz/~sporkaa/doc/3dsnd/thesis.pdf.

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.