Lumière: a Novel Framework for Rendering 3D Graphics in Smalltalk

Total Page:16

File Type:pdf, Size:1020Kb

Lumière: a Novel Framework for Rendering 3D Graphics in Smalltalk Lumière: a Novel Framework for Rendering 3D graphics in Smalltalk Fernando Olivero, Michele Lanza, Romain Robbes REVEAL@ Faculty of Informatics - University of Lugano, Switzerland {fernando.olivero, michele.lanza, romain.robbes}@usi.ch ABSTRACT Squeak, and has thus long left the status of being a frame- To render 3D graphics there is a number of different frame- work that is easy to get into. Jun is less complex than Cro- works written in Smalltalk. While most of them provide quet, but is affected by the licensing policy of VisualWorks, powerful facilities, many of them are outdated, abandoned, despite the fact that Jun itself is free and open. undocumented or heavyweight. Indeed, the Smalltalk community is missing a lightweight and open source 3D framework. To fulfill this need, using In this paper we present Lumi`ere, a novel lightweight 2 framework for rendering 3D graphics using OpenGL based Pharo , we are developing a novel framework for rendering on a stage metaphor. Lumi`ereis implemented using the 3D graphics in Smalltalk called Lumi`ere . Pharo IDE. In its current state it supports basic and com- One of the cornerstones of Lumi`ereis to hinge on the posite shapes to populate 3D scenes, features a camera, and metaphor of a stage. We believe this helps to make the a lighting model. framework and its usage more intuitive, as metaphors are We illustrate the usage of Lumi`erewith Gaucho, an envi- powerful tools to assist the usage of abstract concepts: If ronment for visual programming we are currently building. a framework is built around an intuitive metaphor which maps abstracts concepts to real-world objects, programmers can obtain an immediate mental model of the framework's Categories and Subject Descriptors domain model, thus easing the understanding and usage of D.2.6 [Programming Environments]: Graphical environ- the framework. ments To apply this concept to 3D graphics, Lumi`ere's stage metaphor implies that all graphics are produced by cameras taking pictures of 3D shapes lit by the lights of the stage. A Keywords stage provides the setting for taking pictures of a composi- 3D, Smalltalk, OpenGL tion of visual objects we call micro-worlds. With Lumi`ere a Pharo programmer can produce 3D graphics using high level abstractions (cameras, lights, stages and shapes) instead of 1. INTRODUCTION low-level graphic instructions. Over the years, the Smalltalk language and its many di- We want Lumi`ereto be fully integrated in the Pharo en- alects have featured many frameworks for rendering graph- vironment to provide a seamless user experience. Thus Lu- ics in 3D. Well-known examples include Alice[5] and Cro- mi`ere's rendered stages are integrated with the windows and quet[7] for Squeak, ST3D for Dolphin Smalltalk, and the browsers of the Pharo environment, and makes interactions Jun1 framework for VisualWorks. with a stage possible through the use of the mouse and the However many of the existing frameworks are affected by keyboard. problems such obselence, complexity, and licensing. Squeak In this paper we describe Lumi`ere, the reasons that led Alice is no longer maintained and therefore lacks support to its implementation, the metaphor behind it, its key char- for features present in most modern renderers (for example acteristics and capabilities. To illustrate its usage and po- multi-texturing, Vertex buffer objects, vertex shaders, etc.). tential we describe Gaucho, a 3D environment for visual Croquet, while it is still maintained, has become a complex programming we are currently building. full-fledged collaborative environment that runs on top of Structure of the paper. 1http://www.cc.kyoto-su.ac.jp/~atsushi/Jun/ In Section 2 we describe existing 3D frameworks developed in Smalltalk. In Section 3 we explain the motivation for de- veloping Lumi`ereinstead of using an existing framework. In Section 4 we detail the design and the implementation of Permission to make digital or hard copies of all or part of this work for this novel framework, while in Section 5 we demonstrate the personal or classroom use is granted without fee provided that copies are extensibility of Lumi`ereand in Section 6 we briefly discuss not made or distributed for profit or commercial advantage and that copies the performance of Lumi`ere.Section 7 describes our 3D vi- bear this notice and the full citation on the first page. To copy otherwise, to sual programming environment named Gaucho, built on top republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. of Lumi`ere. Finally, in Section 8 we conclude this paper. IWST’09 August 31, 2009, Brest, France. 2 Copyright 2009 ACM 978-1-60558-899-5 ...$10.00. http://www.pharo-project.org/home 2. RELATED WORK i.e.., whether it is easily loadable (in the best case with Smalltalk has several frameworks and tools for producing just one click) into a Smalltalk image. 3D graphics; these have distinct approaches to the problem • Free commercial usage: this property describes if the of rendering graphics. In this section we categorize the ex- framework can be used in a commercial context with- isting frameworks and compare them according to relevant out any license problems. In Smalltalk this is far from properties. being an irrelevant issue, since deployed applications The frameworks or tools for producing 3D graphics in are inseparable from the virtual machine and the im- Smalltalk can be categorized into two groups, grouped by age containing the language library. the level of abstraction they provide over graphics instruc- tions. The first group contains low level library interfaces • Finally, the framework status is considered, whether it solely providing communication with a 3D library written in is still being maintained or has become obsolete. another language, while the higher level frameworks abstract over the graphic libraries in order to ease graphic program- ming. Balloon3D. This is a renderer for Squeak written entirely in Smalltalk. 2.1 Low level library interfaces It provides lighting, shading, texturing, meshes and ma- Several Smalltalk dialects have interfaces to hardware ac- trix transformations in an object oriented framework. Bal- celerated libraries such as OpenGL and DirectX. loon3D does not provide animations, only rendering a single Examples are the OpenGL interfaces provided by Smalltalk frame at a time. The framework is not maintained anymore X3 and Squeak4 (see Figure 1, B), and Smalltalk MT5 (which and has become outdated, thus it lacks several modern fea- also features a DirectX interface). tures (such as pixel and vertex shaders; multi texturing, While these interfaces allow the programmers to produce etc.). 3D graphics in Smalltalk, they only provide glue code for We considered maintaining and enhancing Balloon3D in- calling graphics primitives. Programmers are forced to think stead of building Lumi`ere,but found several problems with in terms of primitive elements such as vertices, normals and this approach. For example Balloon3D was designed as ren- polygons. Worse, data structures are underused. For in- derer written entirely in Smalltalk, and the hardware accel- stance, the primitives to use a vertex has three floating eration using OpenGL was added later, so we preferred to point parameters instead of a dedicated vertex data struc- build a renderer designed from scratch to take full advantage ture. The data structure used for more complex shapes is of the performance and scalability of OpenGL. Moreover the a simple array of floating-point values. This violates the lack of documentation, usage and maintenance of Balloon3D basic principles of object-oriented programming and forces made us discard the idea of maintaing and enhancing it. developers to deal with painstaking low-level details. The decision to have a low level interface is a sound deci- Squeak Alice. sion for efficiency purposes, in order to render large numbers It is an implementation of Alice[2] for Squeak. It is basi- of polygons. However, abstractions are needed for modeling cally a scene graph based renderer. A scene graph is a hi- purposes, which these libraries do not provide. It is up to erarchical structure for modeling the relationships between the programmer to implement them. objects in the scene. It also features a scripting environ- ment for 3D objects that allows for the creation of animated 2.2 High level frameworks worlds through time (see Figure 1, C). Squeak Alice uses These frameworks, built on top of graphic libraries, pro- Balloon3D for rendering the scenes[3]. This framework is vide high level abstractions for modeling 3D objects and pro- also not maintained, and because it uses Ballon3D it also ducing graphics. They provide facilities for describing a 3D lacks modern features. scene in terms of objects, promoting separation of concerns (and reuse) for the lighting model, the transformations that ST3D. define spatial relationships between shapes, the camera, and This is a framework for creating 3D applications such as the viewing volume of the scene. Examples are Balloon3D, games, simulations and modelers, with an OpenGL inter- Squeak Alice[5], ST3D, Croquet[7] and Jun. face. It runs on the Dolphin Smalltalk dialect. This commer- We compare the frameworks using several properties listed cial framework was abandoned by the company that created in Table 1. The relevant properties we distinguish are ab- it and it cannot be loaded into the latest Dolphin version. stractions, size, loadable, free commercial usage, and main- tained. Jun. This is a framework for handling multimedia, 2D and 3D • Abstractions refers to the amount of high level con- graphics (see Figure 1, E). Jun is object-oriented and pro- cepts that the framework provides, promoting reusabil- vides good abstractions for modeling 2D and 3D graphics. ity and separation of concerns. For example the CodeCity[9, 11] tool has been built using Jun.
Recommended publications
  • A Metacircular Architecture for Runtime Optimisation Persistence Clément Béra
    Sista: a Metacircular Architecture for Runtime Optimisation Persistence Clément Béra To cite this version: Clément Béra. Sista: a Metacircular Architecture for Runtime Optimisation Persistence. Program- ming Languages [cs.PL]. Université de Lille 1, 2017. English. tel-01634137 HAL Id: tel-01634137 https://hal.inria.fr/tel-01634137 Submitted on 13 Nov 2017 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Universit´edes Sciences et Technologies de Lille { Lille 1 D´epartement de formation doctorale en informatique Ecole´ doctorale SPI Lille UFR IEEA Sista: a Metacircular Architecture for Runtime Optimisation Persistence THESE` pr´esent´eeet soutenue publiquement le 15 Septembre 2017 pour l'obtention du Doctorat de l'Universit´edes Sciences et Technologies de Lille (sp´ecialit´einformatique) par Cl´ement B´era Composition du jury Pr´esident: Theo D'Hondt Rapporteur : Ga¨elThomas, Laurence Tratt Examinateur : Elisa Gonzalez Boix Directeur de th`ese: St´ephaneDucasse Co-Encadreur de th`ese: Marcus Denker Laboratoire d'Informatique Fondamentale de Lille | UMR USTL/CNRS 8022 INRIA Lille - Nord Europe Numero´ d’ordre: XXXXX i Acknowledgments I would like to thank my thesis supervisors Stéphane Ducasse and Marcus Denker for allowing me to do a Ph.D at the RMoD group, as well as helping and supporting me during the three years of my Ph.D.
    [Show full text]
  • Tinlizzie Wysiwiki and Wikiphone: Alternative Approaches to Asynchronous and Synchronous Collaboration on the Web
    TinLizzie WysiWiki and WikiPhone: Alternative approaches to asynchronous and synchronous collaboration on the Web Yoshiki Oshima, Takashi Yamamiya, Scott Wallace, and Andreas Raab [Also published in the Proc. of the 5th International Conf. on Creating, Connecting, and Collaborating through Computing (C5 2007)] VPRI Technical Report TR-2007-001 Viewpoints Research Institute, 1209 Grand Central Avenue, Glendale, CA 91201 t: (818) 332-3001 f: (818) 244-9761 TinLizzie WysiWiki and WikiPhone: Alternative approaches to asynchronous and synchronous collaboration on the Web Yoshiki Ohshimay Takashi Yamamiyay [email protected] [email protected] Scott Wallacey Andreas Raabz [email protected] [email protected] yViewpoints Research Institute zQwaq, Inc. 1209 Grand Central Ave. 460 S California Ave #304 Glendale, CA 91202 Palo Alto, CA 94306 Abstract they exhibit possible future directions for collaboration on the Web. This paper presents TinLizzie WysiWiki and WikiPhone, two systems which explore new approaches to media-rich end-user collaboration on the World Wide Web. 1 Introduction TinLizzie WysiWiki enables authoring of interactive, media-rich documents, containing graphical objects bear- The World Wide Web, or Web, has been very successful. ing user-defined scripts, on the Web. In TinLizzie WysiWiki, It seems nowadays to dictate not only many end-users' be- a user manipulates text and active objects in a WYSIWYG havior, but also the mindsets of researchers and software graphical editor in a manner similar to Squeak eToys. vendors; the perception is that a new system should run A notable aspect of TinLizzie WysiWiki is that it allows in web browsers to be successful. As a consequence, im- both synchronous and asynchronous collaboration among provement in the overall user experience in applications has multiple users.
    [Show full text]
  • CONFERENCE COMPANION ESUG 2008 - 16Th International Smalltalk Conference
    ESUG-2008 CONFERENCE COMPANION ESUG 2008 - 16th International Smalltalk Conference CONTENTS Platinum Sponsors.......................................................................................................... 3 Gold Sponsors................................................................................................................ 4 Conference Location....................................................................................................... 5 Program Overview........................................................................................................... 8 Saturday, August 23...................................................................................................... 10 Sunday, August 24......................................................................................................... 10 Monday, August 25....................................................................................................... 11 Tuesday, August 26....................................................................................................... 16 Wednesday, August 27.................................................................................................. 20 Thursday, August 28...................................................................................................... 23 Friday, August 29........................................................................................................... 27 Program Overview........................................................................................................
    [Show full text]
  • Hopscotch: Towards User Interface Composition Vassili Bykov Cadence Design Systems, 2655 Seely Ave, San Jose, CA 95134
    Hopscotch: Towards User Interface Composition Vassili Bykov Cadence Design Systems, 2655 Seely Ave, San Jose, CA 95134 Abstract Hopscotch is the application framework and development environment of Newspeak, a new programming language and platform inspired by Smalltalk, Self and Beta. Hopscotch avoids a number of design limitations and shortcomings of traditional UIs and UI frameworks by favoring an interaction model and implementing a framework architecture that enable composition of interfaces. This paper discusses the deficiencies of the traditional approach, provides an overview of the Hopscotch alternative and analyses how it improves upon the status quo. 1. Introduction Hopscotch are attributable to its revised interaction and navigation model as much as to the underlying Newspeak [1] is a programming language and framework architecture. For this reason, this paper platform being developed by a team led by Gilad pays equal attention to the compositional frame- Bracha at Cadence Design Systems, Inc. The sys- work architecture and to the changes in the inter- tem is currently hosted inside Squeak [2], a descen- action model of Hopscotch compared to more tradi- dent of Smalltalk-80 [3]. Smalltalk, along with Self tional development environments. [4] and Beta [5], is also among the most important influences on the design of the Newspeak language. 2. Traditional Interface Construction This paper focuses on Hopscotch, the applica- tion framework of Newspeak and the Newspeak The art of devising forms to be filled in depends IDE implemented concurrently with the frame- on three elements: obscurity, lack of space, and work. The framework and the IDE allow easy nav- the heaviest penalties for failure.
    [Show full text]
  • Smalltalk Tutorial for Java Programmers!
    SmallTalk Tutorial for Java Programmers! SmallTalk Tutorial for Java Programmers! Giovanni Giorgi <[email protected]> Jan 2002 A small paper to teach yourself the incredible Smalltalk language! It's so easy, it's so fun! 1. Introduction ● 1.1 Revision history ● 1.2 Conventions used in this paper ● 1.3 Distribution Policy ● 1.4 Why Smalltalk? ● 1.5 Background Required 2. Why Smalltalk is so strange? (or a brief history of Smalltalk) ● 2.1 Download Right Now! ● 2.2 Hello world in Smalltalk ● 2.3 Big Numbers ● 2.4 Code Blocks ● 2.5 The while loop 3. Main Differences between Java and Smalltalk http://daitanmarks.sourceforge.net/or/squeak/squeak_tutorial.html (1 of 2) [1/7/2002 20:44:13] SmallTalk Tutorial for Java Programmers! ● 3.1 Java Versus Smalltalk ● 3.2 Types? No thank you!! ● 3.3 The Squeak base library compared with Java ● 3.4 The Smalltalk Code database ● 3.5 Multiple-Inheritance 4. Ending Words ● 4.1 Going on ● 4.2 Commercial and free products list ● 4.3 References http://daitanmarks.sourceforge.net/or/squeak/squeak_tutorial.html (2 of 2) [1/7/2002 20:44:13] SmallTalk Tutorial for Java Programmers!: Introduction 1. Introduction This paper will teach you the basics of Smalltalk80 language. This tutorial suites the needs of C and Java programmers. But the tutorial can be understanded by everyone knowing a bit of C and/or OOP concepts, as we'll see. Because I will refer a lot to other books and use a lot of technical terms, I'll try to enjoy you while reading.
    [Show full text]
  • A Survey of Technologies for Building Collaborative Virtual Environments
    The International Journal of Virtual Reality, 2009, 8(1):53-66 53 A Survey of Technologies for Building Collaborative Virtual Environments Timothy E. Wright and Greg Madey Department of Computer Science & Engineering, University of Notre Dame, United States Whereas desktop virtual reality (desktop-VR) typically uses Abstract—What viable technologies exist to enable the nothing more than a keyboard, mouse, and monitor, a Cave development of so-called desktop virtual reality (desktop-VR) Automated Virtual Environment (CAVE) might include several applications? Specifically, which of these are active and capable display walls, video projectors, a haptic input device (e.g., a of helping us to engineer a collaborative, virtual environment “wand” to provide touch capabilities), and multidimensional (CVE)? A review of the literature and numerous project websites indicates an array of both overlapping and disparate approaches sound. The computing platforms to drive these systems also to this problem. In this paper, we review and perform a risk differ: desktop-VR requires a workstation-class computer, assessment of 16 prominent desktop-VR technologies (some mainstream OS, and VR libraries, while a CAVE often runs on building-blocks, some entire platforms) in an effort to determine a multi-node cluster of servers with specialized VR libraries the most efficacious tool or tools for constructing a CVE. and drivers. At first, this may seem reasonable: different levels of immersion require different hardware and software. Index Terms—Collaborative Virtual Environment, Desktop However, the same problems are being solved by both the Virtual Reality, VRML, X3D. desktop-VR and CAVE systems, with specific issues including the management and display of a three dimensional I.
    [Show full text]
  • This Is the Author's Version of a Work Accepted for Publication by Elsevier
    NOTICE: This is the author’s version of a work accepted for publication by Elsevier. Changes resulting from the publishing process, including peer review, editing, corrections, structural formatting and other quality control mechanisms, may not be reflected in this document. A definitive version was subsequently published in the Journal of Systems and Software, Volume 86, Issue 2, pp. 278-301, February 2013. Efficient Support of Dynamic Inheritance for Class- and Prototype-based Languages Jose Manuel Redondo, Francisco Ortin University of Oviedo, Computer Science Department, Calvo Sotelo s/n, 33007, Oviedo, Spain Abstract Dynamically typed languages are becoming increasingly popular for different software devel- opment scenarios where runtime adaptability is important. Therefore, existing class-based plat- forms such as Java and .NET have been gradually incorporating dynamic features to support the execution of these languages. The implementations of dynamic languages on these platforms com- monly generate an extra layer of software over the virtual machine, which reproduces the reflective prototype-based object model provided by most dynamic languages. Simulating this model fre- quently involves a runtime performance penalty, and makes the interoperation between class- and prototype-based languages difficult. Instead of simulating the reflective model of dynamic languages, our approach has been to extend the object-model of an efficient class-based virtual machine with prototype-based seman- tics, so that it can directly support both kinds of languages. Consequently, we obtain the runtime performance improvement of using the virtual machine JIT compiler, while a direct interoperation between languages compiled to our platform is also possible. In this paper, we formalize dynamic inheritance for both class- and prototype-based languages, and implement it as an extension of an efficient virtual machine that performs JIT compilation.
    [Show full text]
  • Bridging the Gap Between Machine and Language Using First-Class Building Blocks
    Bridging the Gap between Machine and Language using First-Class Building Blocks Inauguraldissertation der Philosophisch-naturwissenschaftlichen Fakultat¨ der Universitat¨ Bern vorgelegt von Toon Verwaest von Belgien Leiter der Arbeit: Prof. Dr. O. Nierstrasz Institut fur¨ Informatik und angewandte Mathematik Von der Philosophisch-naturwissenschaftlichen Fakultat¨ angenommen. Copyright © 2012 Toon Verwaest. Software Composition Group University of Bern Institute of Computer Science and Applied Mathematics Neubruckstrasse¨ 10 CH-3012 Bern http://scg.unibe.ch/ ISBN: 978-1-105-51835-5 This work is licensed under the Creative Commons Attribution–ShareAlike 3.0 License. The license is available at http://creativecommons.org/licenses/by-sa/3.0/. This dissertation is available at http://scg.unibe.ch. Acknowledgments My adventure in Bern started more than four years ago, in October 2007. This page is too short to capture the gratitude I have towards all those who have contributed in any way to this dissertation. First I’d like to extend my gratitude to Oscar Nierstrasz for supporting me throughout my time at the Software Composition Group. He gave me the freedom to develop my own research project, and provided invaluable sup- port in formulating my thoughts. It is thanks to his well-organized research group that developing this thesis almost seemed effortless. I thank Marcus Denker for his continued support and interest in my work. I very much enjoyed our discussions about research; especially while ex- ploring the Swiss mountains. I’d like to thank him for reviewing this thesis, writing the Koreferat, and accepting to be on the PhD committee. I thank Torsten Braun for accepting to chair the PhD defense.
    [Show full text]
  • Croquet: a Collaboration System Architecture
    Croquet: A Collaboration System Architecture David A. Smith, Alan Kay, Andreas Raab, David P. Reed VPRI Technical Report TR-2003-002 Viewpoints Research Institute, 1025 Westwood Blvd 2nd flr, Los Angeles, CA 90024 t: (310) 208-0524 VPRI Technical Report TR-2003-002 Croquet A Collaboration System Architecture David A. Smith Alan Kay 1 Andreas Raab David P. Reed 104 So. Tamilynn Cr. 1209 Grand Central Ave University of MIT Media Laboratory Cary NC, 27513 Glendale, CA 91201 Magdeburg, Germany 20 Ames Street davidasmith@ alan.kay@ andreas.raab@ Room E15-492 bellsouth.net viewpointsresearch.orG squeakland.orG CambridGe, MA 02139 [email protected] ABSTRACT1 this question was asked lonG aGo, and the strenGth of the Croquet [18] is a computer software architecture built from answer has successfully carried us for a quarter century. On the Ground up with a focus on deep collaboration between the other hand, the current environments are really just the teams of users. It is a totally open, totally free, highly thin veneer over what even lonG aGo were seriously portable extension to the Squeak [5] proGramminG system. outmoded approaches to development and desiGn. Many of Croquet is a complete development and delivery platform the really Good fundamental ideas that people had were left for doinG real collaborative work. There is no distinction on the cuttinG room floor. between the user environment and the development environment. great deal has happened in the last few decades that allows Croquet is focused on interactions inside of a 3D shared for some fundamentally new approaches that could not have space that is used for context based collaboration, where been considered at the time.
    [Show full text]
  • Lumi`Ere: a Novel Framework for Rendering 3D Graphics in Smalltalk
    banner above paper title Lumiere` : a Novel Framework for Rendering 3D graphics in Smalltalk Fernando Olivero, Michele Lanza, Romain Robbes REVEAL@ Faculty of Informatics - University of Lugano, Switzerland ffernando.olivero,michele.lanza,[email protected] Abstract One of the cornerstones of Lumiere` is to hinge on the metaphor To render 3D graphics there is a number of different frameworks of a stage. We believe this helps to make the framework and its written in Smalltalk. While most of them provide powerful facil- usage more intuitive, as metaphors are powerful tools to assist ities, many of them are outdated, abandoned, undocumented or the usage of abstract concepts: If a framework is built around an heavyweight. intuitive metaphor which maps abstracts concepts to real-world In this paper we present Lumiere` , a novel lightweight frame- objects, programmers can obtain an immediate mental model of work for rendering 3D graphics using OpenGL based on a stage the framework’s domain model, thus easing the understanding and metaphor. Lumiere` is implemented using the Pharo IDE. In its cur- usage of the framework. rent state it supports basic and composite shapes to populate 3D To apply this concept to 3D graphics, Lumiere` ’s stage metaphor scenes, features a camera, and a lighting model. implies that all graphics are produced by cameras taking pictures We illustrate the usage of Lumiere` with Gaucho, an environ- of 3D shapes lit by the lights of the stage. A stage provides the ment for visual programming we are currently building. setting for taking pictures of a composition of visual objects we call micro-worlds.
    [Show full text]
  • Metamodal Mastery – Virtual Mediations of Transdisciplinarity In
    Beyond the Remix 1 Beyond the Remix: Clarifying Mastery In Virtual Environments Mary Leigh Morbey and Carolyn Steele York University Beyond the Remix 2 Abstract Virtual technologies are having a radical impact on university teaching and learning. A cursory survey of academic conferences on teaching and technology reveals an emphasis on sessions discussing the merits of digital dinosaurs such as learning management systems, e-chats, polling functions, and video-streamed lectures. Meanwhile, university students are remixing video and audio files, constructing 3D animations and multiple avatar-based identities, and playing high- end multiplayer video games in which they interact seamlessly with peers around the globe. More recently, we have seen the emergence of metamedia platforms. These are virtual environments which not only provide users with a dynamic, immersive experience, but also enable them to construct, embed, and archive multimedia resources, text, video, and 3D artifacts, and as well as web browsers and entire software applications. This paper focuses on the potential of metamedia in higher education to foster advanced knowledge production and transdisciplinary research in the construction and mediation of multiple complex lifeworlds. Using Second Life and Croquet as case studies for the engagement of the changing media environment in higher education contexts, we examine the potential and actual promise for tertiary education of 3D immersive technology to develop metamodal mastery – the ability to create, analyze, and synthesize data, artifacts, epistemologies, and vocabularies from a variety of fields in a variety of modes and media, within metamedia platforms. The problems and possibilities of metamodal mastery as a viable contribution also will be discussed.
    [Show full text]
  • SMPL: a Network Architecture for Collaborative Distributed Services
    SMPL: A Network Architecture for Collaborative Distributed Services Carlos A. Rocha Bachelor of Science in Mechanical Engineering Universidad de los Andes, September 2002 Submitted to the Program in Media Arts and Sciences, School of Architecture and Planning, in partial fulfillment of the requirements for the degree of Master of Science in Media Arts and Sciences at the Massachusetts Institute of Technology September 2005 Copyright Massachusetts Institute of Technology 2005. All rights reserved. Carlos A. Rocha Program in Media Arts and Sciences auhor' John Maeda Associate Professor of Design and Computation E. Rudge and Nancy Allen Professor of Media Arts and Sciences thesis supervisor MIT Media Laboratory Dr. Andrew B. Lippman Program in Media Arts and Sciences chkir, departmental commi tee on graduate studies MASSACHUSETTS INSTI'UTE OF TECHNOLOGY ROTCH SEP 2 6 2005 LIBRARIES ...-. rn 'S.'S--- - p w e I 41 SMPL: A Network Architecture for Collaborative Distributed Services by Carlos A. Rocha Submitted to the Program in Media Arts and Sciences, School of Architecture and Planning, on August 5, 2005, in partial fulfillment of the requirements for the degree of Master of Science in Media Arts and Sciences Abstract This thesis proposes a network architecture, called SMPL, for the design and development of collaboration-oriented, distributed applications over the Internet. The goal of SMPL is to enable the development of applications that easily integrate the capabilities of different types of computing resources, software platforms, and data repositories across the Internet transcending the level of a single device. SMPL proposes a new abstraction of the Internet as a network composed of services, resources, and capabilities instead of just machines.
    [Show full text]