How to get and set walk speed value in VRML

How to get and set walk speed value in VRML (VRML version 2.0).

First, you have to create an object for call the javascript function. such as TouchSensor node.

Then, create ROUTE for call the function.

So if you clicked the box that DEF is setWalkSpeed_UP_TOUCH then it’ll call the script at DEF is setWalkSpeed_UP_SCRIPT.

And this is the main part, the JavaScript function.

For this example code, when you clicked the box it’ll set walk speed to 5 and current walk speed will show you on console.

Done! (=

BS Contact 3D engine from Bitmanagement now cross-platform [TH/EN/DE]

Interactive 3D content now online on Windows, Mac, Linux and Apple iOS / BS Contact supports all major browsers (IE, Firefox, Safari, Google Chrome and Opera) on Windows and Safari on Mac

C++ Realtime Rendering Software: Cross-Platform and Cross-Browser

==============================================================
=TH===========================================================
==============================================================

สรุปสั้นๆได้ว่า ขณะนี้ BS Contact ของ Bitmanagement Software GmbH ได้พัฒนาไปในรูปแบบ Cross-Platform และ Cross-Browser ซึ่งบน Windows สามารถใช้งานได้กับบราวเซอร์หลักทั้งหมด ได้แก่ Internet Explorer, Firefox, Google Chrome และ Opera ส่วนบน Mac สามารถใช้งานได้กับ Safari อีกทั้งยังพัฒนาไปถึงโทรศัพท์โนเกยรุ่น N900 และ iOS ซึ่งสามารถใช้งานบน iPhone3GS, iPhone4, iPod Touch, iPad1 และ iPad2 ได้ อีกทั้งยังมีตัวโปรแกรมที่เป็น Standalone สามารถใช้งานเรียกดูไฟล์ VRML/X3D หรือ Collada ได้ทันที
สามารถ Download BS Contact ได้ที่ http://www.bitmanagement.com/en/download

==============================================================
=EN===========================================================
==============================================================

Bitmanagement a leading developer of 3D visualization software announced today that the BS Contact C++ renderer has been successfully ported from Windows to Mac and Linux systems as well as Apple iOS devices including iPhone 3GS, iPhone4, iPad 1, iPad 2 and iPod devices. The 3D internet software, which runs embedded in all major browsers implements both the ISO standard definitions X3D and VRML prepared by the US based Web3D consortium in a cross platform way.

With the official release of BS Contact Mac 7.2.19 on Mac the 15 years continuous development of the 3D renderer BS Contact has become platform independent. Moreover, the trend toward performing interactive visualization on mobile devices is taken into account through the port of the C++ renderer BS Contact to handheld devices such as Nokia phones and iPad.

“The 3D content produced in line with existing 3D standards on the web ranges in millions already today. Our web plug-in BS Contact Mac presents this content embedded in Safari on Apple computers with the latest visual tricks and the speed known previously only from state of the art computer games. I look forward to receive further customer requirements and test feedback to our real-time web enabled software.”, explained Peter Schickel, Managing Director and CEO from Bitmanagement.

The target markets for the cross platform and cross browser 3D engine are Computer Aided Design (CAD) , Geographical Information Systems (GIS) and Interactive Games. In the area of CAD, Bitmanagement has for example won Spatial Corp.USA, as a provider of the worldwide used ACIS Kernel Cloud services and delivers a customized version of BS Contact for the ACIS Scheme Web Toolkit (http://web3d.spatial.com). In the GIS area, Bitmanagement is used as a rendering partners in M.O.S.S. Computer Grafik Systeme GmbH for the OEM version of their 3D Wega-Viewer. In the game area, for example, the apocalyptic game “Leelh” is based on BS Contact.

==============================================================
=DE===========================================================
==============================================================

Bitmanagement, ein führender Entwickler von 3D Visualisierungssoftware, gab heute bekannt, dass der BS Contact C++ Renderer erfolgreich von Windows auf MAC und Linux Systemen, wie auch auf Apple IOS Geräten (iPhone 3GS, iPhone 4, iPad 1, iPad 2 und iPod) portiert wurde. Die 3D Internet Software, die eingebettet in allen gängigen Internet Browsern lauffähig ist, stellt die ISO Standardformate X3D und VRML des Web3D Konsortiums, USA, dar.

Durch das offizielle Release des BS Contact MAC 7.2.19 wurde die in 15 Jahren konsequente Weiterentwicklung des 3D Renderers BS Contact Platform unabhängig. Darüber hinaus trägt Bitmanagement mit der Portierung des c++ Renderers BS Contact auf Handhelds, wie Nokia oder iPad, dem Trend zur performanten interaktiven Visualisierung auf mobilen Endgeräten, Rechnung.

“Die 3D Inhalte, die auf 3D Standards basieren, gehen heute schon in die Millionen. Das User Web Plug-In BS Contact MAC zeigt diesen Content im Safari Browser mit den neuesten Grafik-Tricks und der Schnelligkeit, die man sonst aus der Computer Spiele-Welt kennt. Ich freue mich bereits darauf, weitere Anforderungen und Testberichte unserer Kunden zu der neuen echtzeitfähigen 3D Web Software zu erhalten”, erläutert Peter Schickel, Geschäftsführer und CEO von Bitmanagement.

Die Zielmärkte für die Cross-Platform und Cross-Browser 3D Engine sind Computer Aided Design (CAD), Geographische Informations Systeme (GIS) und interaktive Spiele. Im CAD Bereiche konnte Bitmanagement beispielsweise Spatial Corp. USA, gewinnen, die als Anbieter des ACIS Kernels für das ACIS Scheme Web Toolkit auf eine speziell für Spatial angepasste Version zugreifen (http://web3d.spatial.com). Im GIS Bereich wird Bitmanagement als Rendering-Partner bei der M.O.S.S Computer Grafik Systeme GmbH, Taufkirchen bei München, für die OEM Version des 3D Wega Viewers genutzt und offen ausgewiesen. Im Game-Bereich ist beispielsweise das apokalyptische Spiel “leehl.com” zu nennen, das auf BS Contact basiert.

Ref: http://www.pressebox.de/pressemeldungen/bitmanagement-software-gmbh/boxid/427271

Library week 2011 – My Interview

พอดีมีคนมาขอสัมภาษณ์ไปติดบอร์ดงานสัปดาห์ห้องสมุดที่ มทส. ครับ ซึ่งน่าจะเป็นที่บรรณสาร เลยขอเอาบทสัมภาษณ์ของตัวเองมาแปะที่บล๊อคตัวเองด้วย เนื้อหามันอาจจะไม่เหมือนกับที่อยู่บนบอร์ดจริงนะครับ ซึ่งเห็นเขาบอกว่าติดต้นเดือนกรกฏาคม แต่ผมเอามาแปะที่บล๊อคตัวเองก่อนแล้ว อุอุ ซึ่งในนี้เนื้อหาก็อาจจะมีมากกว่าบอร์ดจริงนิดหน่อยนะครับ (หรืออาจจะมากกว่ามากเลย) เพราะผมก็ไม่รู้ว่าเขาจะปรับคำหรือตัดส่วนไหนไปบ้าง เพราะผมแพล่มไปซะเยอะเลย ใครใคร่อ่านก็ยินดีครับ ประวัติชีวิตบ้าบอของผม ฮ่าๆ

ผมเป็นคนที่จดไดอารีครับ แต่ละวันๆทำอะไร แต่ก็ไม่ทุกวันหรอกครับ เฉพาะวันพิเศษหรือวันบางวันที่มีอะไรพิเศษสำคัญๆ ความตั้งใจจริงๆก็คือจดทุกวันแหละครับ แต่เผอิญผมขี้เกียจ ฮ่าๆๆ อัญเชิญอ่านครับ

HASSADEE PIMSUWAN

1. พี่มีวิธีเตรียมตัวสอบ อ่านหนังสือแบ่งเวลาอย่างไรก่อนสอบครับ?

วิธีที่ลองเล่นมาหลายวิธีครับ เล่าไปตามประสบการณ์อันน้อยนิดนะครับ จะเล่าตามวิธีและผลของแต่ละวิธีที่ได้ลองมานะครับ การตัดสินใจหรือการประยุกต์ใช้ขึ้นกับตัวผู้เรียนเองนะ ไม่รับรองว่าจะเป็นตามนี้ เอิ๊กๆ (ที่ยกตัวอย่างว่าผลจะเป็น GPA เพราะเคยฟังอาจารย์ท่านหนึ่งแนะนำเรื่องการเรียนและยกตัวอย่างผลการเรียนมาให้ด้วยว่าได้เท่าไหร่ ซึ่งผมเลยขอเดินตามรอยสักนิด)

- อ่านทบทวนทุกวัน ตามการเรียนแบบระบบหน่วยกิต เช่น 3-0-6 คือ เรียน 3 ชั่วโมงต่อสัปดาห์ 0 คือ ชั่วโมงปฏิบัติการ และ 6 คือชั่วโมงทบทวนต่อสัปดาห์ เราก็แบ่ง 6 เป็น 3 ชั่วโมงก่อนเรียน อ่านไปก่อนเรียน และอีก 3 ชั่วโมงคืออ่านทบทวนจากที่เรียนมาครับ พยายามทำความเข้าใจ เมื่อเราเข้าใจแล้วเราก็จะสามารถประยุกต์ใช้จริงได้ และก็จะจำได้ไปในตัวครับ ก่อนสอบก็ชิวๆสบายๆถ้าทำแบบนี้ครับ วิธีนี้เท่าที่ลอง ถ้าทำจริงๆ GPA ก็น่าจะสัก 3.80-4.00 ล่ะครับ วิธีนี้หากใครที่เคยลงเรียนวิชาของอาจารย์ ดร.เทพทวี โชควศิน คงคุ้นเคยกันดีครับ เพราะอาจารย์จะแนะนำวิธีการเรียนแบบนี้ ซึ่งตอนผมเรียน ผมโชคดีที่ีได้ลงวิชา Logical Thinking ตั้งแต่ปี 1 เทอม 1 เลยได้รู้จักวิธีการเรียนแบบนี้ เวลาเรานำไปปฏิบัติใช้จริง ไม่ต้องถึงกับเป๊ะมากก็ได้ครับ แต่เอาไปประยุกต์ใช้ให้เหมาะสมกับเรา เพราะบางคนก็ต้องทำงานไปด้วยหรือสภาพความเป็นอยู่ที่ต่างกัน ก็ต้องดูตามความเหมาะสมครับ
(ความเห็นส่วนตัวต่อวิชา Logical Thinking หรือ วิชาศึกษาทั่วไป 1 เรื่องตรรกะการใช้เหตุผล ถ้าเรื่องความรู้สึกที่มีต่อวิชาพวกนี้ ผมชอบนะ ชอบเพราะว่า ผมเห็นว่ามันมีประโยชน์ในแง่ฝึกให้เรามีวิธีคิด รู้จักการใช้เหตุผล ในด้านของอารมณ์มันทำให้ผมใจเย็นขึ้นมาก รับฟังความคิดเห็นผู้อื่นมากขึ้น รับฟังเหตุผล ซึ่งโดยส่วนมากก็ใช้เหตุผลกันแบบผิดๆ เรื่องบางเรื่องไม่ต้องอารมณ์ล้วนๆก็ได้ครับ จริงอยู่ว่าถ้าไม่มีอารมณ์ เราคงไม่ใช่คน แต่มันก็ไม่ใช่แบบนั้นสักหน่อยครับ อย่างนั้นคงเป็นความเข้าใจผิดแล้ว อยากให้นักศึกษาที่ได้เรียนวิชาแบบนี้ได้นำมาใช้จรืงๆบ้างครับ ไม่ใช่อยู่แต่ในตำราหรือเพียงแค่อ่านไปสอบพอผ่านๆ ถ้าเข้าใจมัน สามารถนำไปใช้ประโยชน์ได้ในชีวิตประจำวัน มันจะเป็นประโยชน์ต่อตนเองมากๆครับ)

Continue reading

[X3DOM Demo] Create geometry by using JavaScript

1. Prepare your HTML file.
Don’t forget to link your HTML file with x3dom.js and spheretroupe.js or your JS file.

SphereTroupe: Link to JS files.

You also can link X3DOM JavaScript from this link: http://x3dom.org/x3dom/src/x3dom.js

Write your X3D Tag in body tag in your HTML file

SphereTroupe: X3D Tag in HTML file

2. Create your JavaScript file and write your function in this file.

SphereTroupe: spheretroupe.js

You can write X3D in document.write(“”); same as using createVrmlFromString in VRML if your ever seen it. But in X3DOM it’s easier, See SphereInit function.

Result of SphereTroupe Demo
– Default View

SphereTroupe: Default view

- Perspective View

SphereTroupe: Perspective view

- Point Mode in Perspective View (by type “m” on your keyboard)

SphereTroupe: Points Mode in Perspective View

Test script for check browser supports WebGL ?

Test script for check browser supports WebGL

Function browserSupportWebGL()
function browserSupportsWebGL() {
var canvas = document.getElementById('gltest');
var context = null;var names = ["webgl", "experimental-webgl", "webkit-3d", "moz-webgl"];
for (var i = 0; i < names.length; ++i) {
try { context = canvas.getContext(names[i]); }
catch(e) {}
if (context) { break; }
}
return context != null;
};

Function Show()
function show() {
alert ('WebGL '+(browserSupportsWebGL()?'':'not ')+'supported');
}

How to export file from Maya to .wrl, .x3d and to HTML/XHTML for Web3D [EN/TH Languages]

How to export file from Maya to .wrl, .x3d and to HTML/XHTML for Web3D

Step 1:
[EN] Model and shade in Maya as usual. You should use png images for texturing.
[TH] เปิด/สร้างไฟล์ใน Maya, สำหรับ Texture ที่ใช้ควรเป็น .png

Step 2:
[EN] Open ‘Window | Settings/Preferences | Plug-in manager’ and check the ‘loaded’ or ‘Auto load’ option vrml2Export.
[TH] เปิดเมนูที่ชื่อว่า “Window -> Settings/Preferences -> Plug-in manager” แล้วเลือก “Loaded” และ “Auto load” ที่ vrml2Export

Step 3:
[EN] Open the Export dialog under ‘File | Export All..’, Enter a filename (.wrl suffix) and switch to filetype ‘vrml2′.
Don’t forget to check the folowing export options:
Hierarchy: Full
Texture Options: Original
Export: Normals and Textures
Click the “Export All” button. This will create a vrml2 file in your scenes folder.
[TH] ในการ Export เลือกที่เมนู “File -> Export All..” ใส่ชื่อไฟล์เข้าไป ไม่ต้องเติม .wrl ตามหลัง โดยให้ไปเลือกที่ชนิดของไฟล์ให้เป็น “vrml2″ ซึ่งไฟล์ที่ออกมาจะเป็น .wrl
ในการ Export ให้เลือก Options ต่างๆดังนี้ด้วย
1. Hierarchy: Full
2. Texture Options: Original
3. Export: Normals and Textures

Step 4:
Export VRML file (.wrl) to X3D (.x3d) and HTML/XHTML (X3DOM)
[EN] Open a terminal or command prompt, change to the folder containing your vrml2 model and your textures and run aopt (part of Instant Reality) by typing the following command
[TH] เปิด Terminal หรือ Command Prompt และไปยังโฟลเดอร์ที่ไฟล์ VRML (.wrl) อยู่ และที่ Textures อยู่ด้วยเช่นกัน แล้ว Run “aopt” ซึ่งจะได้มาหลังจากการติดตั้ง Instant Reality แล้ว ซึ่งสามารถดาวน์โหลดได้จากลิ้งนี้

For Non-Texture file (Mac OS X)
/Applications/Instant\ Player.app/Contents/MacOS/aopt -i pipe.wrl -u -N pipe.html

For texture file (Mac OS X)
/Applications/Instant\ Player.app/Contents/MacOS/aopt -i pipe.wrl -d Switch -f ImageTexture:repeatS:false -f ImageTexture:repeatT:false -u -N pipe.html

For Windows
สำหรับ Windows ไม่ต้องลากไปจนถึงตำแหน่งที่ aopt อยู่นะครับ เพียงแค่
aopt -i pipe.wrl -u -N pipe.html

สำหรับข้อมูลเพิ่มเติมสำหรับการใช้คำสั่ง aopt
Convert VRML to X3D-XML
aopt -i foo.wrl -x foo.x3d

Convert VRML or X3D-XML to HTML
aopt -i foo.x3d -N foo.html

Convert VMRL or X3D-XML to XHTML
aopt -i foo.x3d -M foo.xhtml

Optimization and build DEF/USE reuses while converting with “-u”
aopt -i foo.x3d -u -N foo.html

ตำแหน่งที่ aopt อยู่
Windows: C:\Program Files\Instant Player\bin\aopt.exe
Mac: /Applications/Instant Player.app/Contents/MacOS/aopt
Linux: /opt/instantReality/bin/aopt

[EN] or use this method to transcoding from VRML to X3D or reward.
[TH] หรืออีกวิธีในการแปลงโค้ดจาก VRML ไปเป็น X3D หรือแปลงกลับ

Transcoding VRML to X3D or X3D to VRML
[EN] Via Online Transcoding
[TH] สำหรับการ Export VRML (.wrl) ไปเป็น X3D (.x3d) หรือการแปลงกลับสามารถใช้ตัวแปลงออนไลน์ได้ครับ ตามลิ้งข้างล่างนี้

http://www.instantreality.org/tools/x3d_encoding_converter/

Step 5:
[EN] Maya is using absolute path names. Therefore, open your html file with a standard text editor (vi, wordpad,…) and remove all pathes from ImageTexture
[TH] หลังจาก Export แล้ว Maya จะใช้ชื่อ Path ตามขั้นตอนแรกที่เราใช้สร้างโมเดลใน Maya เพราะฉะนั้นต้องเข้าไป Edit Code ในไฟล์ที่เรา Export มาแล้ว ซึ่งสามารถใช้ Text Editor ทั่วไปได้ เช่น Vim, Notepad++ หรือ Wordpad และอื่นๆ ในการแก้ไข Path ดังกล่าวเพื่อที่จะสามารถนำ Texture มาแสดงได้อย่างปกติ

Step 6:
[EN] Copy html and textures into your web folder and open the website with your x3dom capable browser.
[TH] Copy ไฟล์ทั้งหมดของเราที่ใช้ (HTML และ Textures) Upload ขึ้น Server และเปิดใช้โดย Browsers ที่รองรับ WebGL ก็เป็นอันเสร็จสิ้นกระบวนการ : )

Example
Pipe in VRML or X3D file (via BS Contact)

Pipe in VRML or X3D file (via BS Contact)

Pipe in X3DOM

Pipe in X3DOM

For more information:
1. Generic 3D Data Convertion
2. Maya Export