Tag Archives: BS Contact

เริ่มต้นกับ X3DOM | Getting Started with X3DOM

“Post นี้เหมาะสำหรับผู้ที่ต้องการเริ่มศึกษา/เล่นกับ X3DOM แต่ไม่รู้จะเริ่มยังไงครับ และถ้ามีพื้นฐานภาษา X3D แล้วจะติดปีกบินได้เลย ;D”

พื้นฐานและสิ่งที่คุณควรจะมี
1. Web Browser ที่รองรับ WebGL, HTML5 (Canvas) เช่น Google Chrome, Mozilla Firefox (แนะนำให้อัพเดทเป็นเวอร์ชั่นล่าสุดครับ ใครไม่เคยอัพเลยก็อัพซะนะครับ) **ล่าสุด Opera Next Version 12 ก็รองรับ WebGL แล้วนะท่าน**
2. พื้นฐานด้าน 3D เล็กๆน้อยๆพอเขี่ยๆสะกิดได้
3. ความรู้ในภาษา JavaScript สำหรับพอเล่นกับ X3DOM Runtime API ได้ (สำหรับในเชิงลึกหลังจากนี้)
4. ความรู้ในภาษา XML เพื่อให้เข้าใจภาษา X3D ได้ง่ายยิ่งขึ้น

ปัญหา
1. สำหรับคนที่มีไฟล์ VRML (.wrl) หรือ X3D (.x3d) อยู่แล้ว อยากอัพเกรดคุณภาพชีวิต เบื่อกับการใช้ Plugin ในการเปิด Web3D แล้ว อยากมาโลดแล่นบน Web Browser แบบ Unplugin โดยใช้ WebGL แทน แต่ไม่รู้จะทำไง เขียน WebGL ตรงๆก็อาจจะยากลำบากจนท้อแท้หน่ายชีวิตกัน.. จะทำยังไง?
2. มีไฟล์จาก Maya อยู่แล้ว แนะนำให้ไปอ่านโพสเก่าผม อันนี้
3. สำหรับคนที่มีไฟล์จาก 3Ds Max (.3ds) สามารถทำได้โดยการ Import ไฟล์นั้นเข้าไปที่ Blender (ต้องมี Blender ใช้ก่อนนะครับ ดาวน์โหลดและใช้ฟรีครับ) และ Export จาก Blender มาเป็น .x3d อีกที หรือใช้ BS Contact Plugin ทำการ Export ออกมาก็ย่อมได้

หลังจากมีไฟล์ X3D แล้ว สิเฮ็ดหยังต่อ?
1. ไฟล์ที่เราต้องการคือ x3dom.js
คำถาม เอามาจากไหน?
คำตอบ ดาวน์โหลดได้จาก X3DOM
2. โหลดมาแล้ว ทำไงต่อ?
คำตอบ เรียกใช้สิคร๊าบบบ

<script type="text/javascript" src="x3dom.js"></script>

ต่อจากนั้น เราก็ประกาศ ในหน้า HTML/XHTML ของเราได้เลยครับ
เช่น (เริ่มจากใน body เลยนะครับ)

<X3D xmlns="http://www.web3d.org/specifications/x3d-namespace"  showStat="false" showLog="false" x="0px" y="0px" width="400px" height="400px">
    <Scene>
        <Viewpoint position='0 0 10' />
        <Shape>
            <Appearance>
                <Material diffuseColor='0.603 0.894 0.909' />	
            </Appearance>
            <Box DEF='box'/>
        </Shape>
    </Scene>
</X3D>

อย่างเช่นโค้ดข้างบนนั้นคือ จะได้กล่องมา 1 กล่องครับ

ทั้งหมดนี้ก็เป็นพิธีกรรมในการเริ่มต้นครับ ลองเปิด Web Browser ของคุณได้เลย จะปรากฏกล่องให้คุณหมุนเล่นแล้วแหละครับ
Welcome to Web3D World ครับ : )

สำหรับตัวอย่างอื่นๆสามารถดูได้จากทาง Website ของ X3DOM ได้โดยตรงหรือดูจากหน้า X3DOM ของผมได้เหมือนกันครับ ไม่ต่างกันครับ : )

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

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

Khronos Releases Final WebGL 1.0 Specification. Exactly, IE != Supported (Thai Language)

WebGL เป็นเทคโนโลยีแสดงผลในรูปแบบ 3 มิติ บนเว็บเบราว์เซอร์ผ่าน JavaScript โดยพื้นฐานมาจาก OpenGL ES ซึ่งทั้ง WebGL และ OpenGL ES ก็พัฒนามาจากองค์กร Khronos

ซึ่งวันที่ 3 มีนาคม 2554 ที่ผ่านมาสเปกของ WebGL 1.0 ได้เสร็จสมบูรณ์แล้ว ซึ่งก่อนหน้านั้นก็ได้เริ่มเป็นที่รู้จักกันอย่างแพร่หลายในกลุ่มนักพัฒนา Web3D อย่างมากในปีที่แล้ว ซึ่งก็มี Websites สำหรับการเรียนรู้ WebGL เกิดขึ้นมาไม่ว่าจะเป็นของ Mozilla เองที่สร้าง Demo ของ WebGL ขึ้น และเว็บ Learningwebgl ก็เป็นที่นิยมและเป็นที่รู้จักอย่างแพร่หลายด้วยเช่นกัน
ซึ่ง ณ ขณะนี้ WebGL ได้รับการสนับสนุนจากหลายองค์กร ซึ่งก็คือผู้ผลิตเบราว์เซอร์รายใหญ่ 4 ราย ได้แก่ Firefox, Chrome, Safari และ Opera ซึ่งแน่นอน ยังขาด IE ซึ่งผมได้ลองคุยกับ Developer ที่ทำงานอยู่บริษัทเดียวกับผม ก็คุยกันเล่นๆนะครับ ว่าจะทำยังไงให้ IE มาสนับสนุน WebGL คำตอบก็คือ รอให้ Mozilla ไม่ก็ Google ไปซื้อ Microsoft มาให้ได้ก่อน ก็ขำๆดีครับ

อาจด้วยเหตุผลที่ Microsoft ได้พัฒนา DirectX ซึ่งหาก WebGL เข้ามา DirectX จะไปอยู่ที่ไหน? ซึ่งความคิดเห็นผมในปัจจุบันและงานที่ทำอยู่ก็เริ่มเปลี่ยนจากการใช้ DirectX มาใช้ OpenGL กันแล้ว ซึ่งเป็นสิ่งที่รองรับกันในทุกระบบปฏิบัติการไม่ว่าจะเป็น Windows, Mac OS หรือ Linux ก็ต่างรองรับ OpenGL ทั้งสิ้น ซึ่งมันเปิดกว้างมากกว่าที่จะยึดอยู่กับระบบปฏิบัติการเดียว ซึ่งระบบปฏิบัติการอื่นๆนอกจาก Windows มีแนวโน้มได้รับความนิยมสูงขึ้นเร่ือยๆตลอดหลายปีที่ผ่านมา สำหรับ DirectX การใช้งานแบบเห็นกันมากและชัดเจนที่สุดก็คือเกมส์ครับ ซึ่งส่วนใหญ่ยังอยู่บน Windows และใช้ DirectX กันแทบทั้งหมดหมด (นึกถึงตอนติดตั้งเกมส์ออนไลน์หลายๆเกมส์ต่างถามหา DirectX ก่อนติดตั้งแทบทั้งสิ้น) นอกจากที่ WebGL จะไปชนกับ DirectX แล้วยังมาชนกับ Molehill ของ Adobe อีกด้วย ซึ่งเป็นเทคโนโลยี 3 มิติของ Flash Player

แต่ถึงกระนั้น WebGL ก็มีผู้สนับสนุนอยู่มากครับ รายใหญ่ๆก็เป็น NVIDIA, Facebook, Qualcomm etc. และยังมีการประยุกต์ไปใช้ในเทคโนโลยีตัวอื่นๆได้อีก เช่น X3DOM ซึ่งเป็นเทคโนโลยีที่มีการใช้ WebGL ด้วยการเขียนในรูปแบบ X3D หรือที่เทคโยโลยีที่น่าสนใจอย่างมากที่กำลังมานี้ก็คือ WebCL ซึ่งจะช่วยให้การประมวลผลของ WebGL มีประสิทธิภาพสูงมากขึ้น โดยเป็นการใช้ GPU และ multi-core CPU ประมวลผลจากเว็บเบราว์เซอร์ ซึ่งจะช่วยลดปัญหาด้านความเร็วของ WebGL ได้มาก

สำหรับทางเลือกในการเปิดใช้ Web3D ในปัจจุบัน Plugin ก็ยังเป็นสิ่งที่สำคัญอยู่ เนื่องจากลบจุดด้อยด้านความเร็วที่ยังช้าอยู่ของ WebGL ซึ่งหากเทียบกับใช้ Plugin ในขณะนี้ ความเร็วยังสู้ไม่ได้ และด้วยวิธีการประมวลผลที่แตกต่างกัน สำหรับ Plugins ก็มีการพัฒนาหลายองค์กรด้วยกันครับ ไม่ว่าจะเป็น BS Contact ของ Bitmanagement Software GmbH หรือจะเป็นของ Octaga ส่วนตัวผม BS Contact ดีที่สุดครับ มีความรวดเร็วในการประมวลผลสูงมาก และแน่นอนว่ามีการพัฒนารูปแบบของ Web3D ในอนาคตออกมาอย่างแน่นอน ซึ่งตอนนี้ยังบอกไม่ได้ครับ : )

Ref: Khronos, CNET, Blognone

BS Contact for Mac OS X

Jade Dragon Demo และ Cathedral Demo จาก Bitmanagement Software GmbH
Demo สามารถดูได้จาก http://bitmanagement.de/en/showcase/interactive-demos
(หากติดตั้ง Plug-in สำหรับดู VRML/X3D แล้ว)
สำหรับ Demo นี้เป็นการแสดงผลจาก Mac OS X 10.6.5
ซึ่งได้ทดลองตัว BS Contact 7.2 (Mac version) โดยเป็นตัว Plug-in สำหรับ Safari
หลังจากติดตั้งแล้ว สามารถเปิดไฟล์ Web3D ที่เขียนจาก VRML/X3D ได้เลย เช่น .wrl, .x3d เป็นต้น

สำหรับการ Download สามารถเข้าไปที่ลิ้งนี้ได้ครับ http://bitmanagement.de/en/download
ซึ่งตัว BS Contact จะมีทั้งสำหรับ Windows, Mac และ Linux แล้ว

สำหรับใครที่มีข้อสงสัยหรือต้องการเสนอแนะสำหรับตัว BS Contact
สามารถ Comment ผ่าน Blog นี้ได้เลยครับ : )