6.15.05
Began investigating compiling the AR tools for tutorial --
39 build errors related to "#include" framework files
(location). PM - Song fixed file locations; builds ok!
6.16.05
Ran SimpleTest; built with no errors but ran w/errors
associated w/OpenGL & GLUT. Downloaded and installed GLUT 3.8 to the
Frameworks directory per Song's discovery. Got same errors upon running
SimpleTest again--#1 = object non-aligned pointers being freed (various 6) and
#2 = GLUTInit being called a second time. SimpleLite ran fine.
6.17.05
Looked at code to try to determine difference between
running SimpleLite and buggy, non-running SimpleTest code. Discovered
different "gsub" includes used. Got AR cube in SimpleLite to
spin.
6.21.05
Learned proper way to include Mac OS X GLUT
Frameworks. Learned difference between gsub.h & gsub_Lite.h and why
SimpleLite runs and SimpleTest doesn't (kind of). It's related to two
GLUTInit functions being called--one in gsub.h (used by SimpleTest) kicks the
program out. Completed an XCode/GLUT tutorial to learn how to properly
develop Carbon C applications for Mac OS X in XCode and how to compile and use
GLUT to produce simple graphics, manipulations, and animations.
6.23.05
Went through the code for the C AR program
"SimpleTest" line-by-line, researched the functions, figured out what
it did and how, and analyzed its structure for possible reasons for its not
working. The main procedure ends with "return (0)" and includes
a call to a procedure called "init" which contains the function
"GLUTInit". This could be the cause of our error where GLUTInit
is called a second time. However, Song pointed out that the video paths
did not seem to be opening the same as they do in the program
"simpleLite" so even if the GLUTInit problem is solved, there may be
other reasons preventing "SimpleTest" from running correctly.
6.24.05
Worked on analyzing the difference in the procedures
between "SimpleTest" and "SimpleLite". SimpleLite
looks like original code for the ARToolkit; SimpleTest's documentation notes it
has been modified and also lacks some of the standard ARToolkit comments,
indicating it may have simply been added to the kit by third party.
Altered code for SimpleTest and got it to actually run and open up the video
camera settings window correctly and open up a graphics window/context.
However, the graphics window was dark and did not relay video signal. We
believe the code may just not work on the Mac or may be incomplete (some
functions seem to be missing and would require inclusion of three long
procedures from SimpleLite which would make the two programs practically the
same. However, a possibility struck me that differences in the include
OpenGL libraries may be preventing the programming from being able to draw the
video in the graphics window (will mod these lines of code next time to
test). Also planning on compiling SimpleTest on a Windows machine to test
if it's simply a Mac Unix issue or if it simply won't work on either machine
because it's buggy and incomplete. Interestingly, an AR demo downloaded
off the internet for Mac that produces a virtual fireworks display runs with
the title "SimpleLite" appearing on the Program Menu Bar. We
also realized that by making the necessary changes to SimpleTest to make
it work and making it practically the same as SimpleLite then the only
difference between them is the inclusion of "gsub_lite.h" instead of
"gsub.h". gsub_lite.h adds some simplified functions but at the
loss of several functionalities including stereoscopic HMD and GLUT event
monitors. However, tests showed that both gsub.h and gsub_lite.h could
run simultaneously without problems so SimpleLite could still access the
stereoscopic HMD and GLUT event functions by simply adding the inclusion of the
gsub.h file in addition to gsub_lite.h and calling the appropriate
functions. Also, by noting that the drawing procedures for the cube was
different in SimpleTest vs. SimpleLite we stumbled across the OpenGL/GLUT
functions required to draw other shapes. We were able to produce a
hovering sphere off the marker instead of the cube and got it to spin,
etc. The only thing missing is the understanding of how to apply textures
and shading to the objects in order to get Song's spinning planets. We
found some tutorials to learn how to do this and will look at these next
session.
6.26.05
The OpenGL library difference theory turned out to not be
the answer. The #include code in "SimpleTest" is actually the
same as in "SimpleLite", just written in a convoluted way. We
attempted to setup and compile SimpleTest on a Windows machine but ran out of
time due to the number of pre-reqs that needed to be loaded first. We
will attempt to complete this next session as well as learning about adding textures
to our 3D virtual objects.
6.27.05
Went through tutorials for coloring and texturing objects
with GLUT. Learned how to do it but couldn't compile it to do so.
We think this is due to not adding/linking all the correct libraries. The
specific code required is not long and we feel we could get it to go with time
but agreed that we can't allow ourselves to get behind dealing with these
details instead of investigating the other AR technology options first.
If we decide that ARToolkit is going to be our choice, then we will go back and
spend the time to get this to work for us. We didn't explore the
installation of ARToolkit on the Windows machine due to networking problems
that prevented us from installing the required pre-req's. This will be
done in pm to prepare for next session.
6.28.05
While preparing pre-req's to run ARToolkit and MXR Toolkit
on Windows, the thought occured that perhaps the reason SimpleTest won't run on
Mac is because it is using commands accessing DirectShow drivers (for
PC). A DirectShow driver installation is listed as a requirement for the
PC installation of ARToolkit but not for Mac. Downloaded/installed Visual
C++ Express 2005, DirectX 9 SDK, Direct Show video library, glut, and open gl
for windows.
6.29.05
Tried to include missing frameworks and libraries that
were indicated when we tried to compile glut and DSVideo. Failed. Next
we'll move on to DART under Song's direction. We'll return to the last step of
ARToolkit and MXRToolkit at a later date once we can ascertain the problem with
Windows.
6.30.2005
Song downloaded and installed DART 2.0 for Mac OS X.
7.5.2005
Tried to run DART test file LiveVideo. Unsuccessful.
7.6.2005
Tried to run DART tutorial 1.3 test file for camera test.
Unsuccessful. Do we have the right type of camera. What type of camera do we
have? We may have more sucess with DART when we get a fast PC. Web design sketches.
7.7.2005
Started work on website.
7.8.2005
Continued work on website.
7.11.2005
Successfully ran Dart test file MarkerTracking.dir using
primitive objects. Solution was adding the right file path for data files and
changing video size to 320x240. Unsuccessful in using shockwave 3d models
instead though the objects would work when just dragged and dropped onto the timeline.
Wrote an email to the Georgia Tech peeps for help on using Shockwave 3D objects
instead of the primitives. Found that DART has the ability to use
tracking methods other than simple fiducial marker tracking, including GPS,
InertiaCube, and Intersense products. This would be a very big plus
allowing the arena to be free of the clutter of cryptic visual markers
everywhere one needed augmented content to appear.
7.12.2005
Got response on email inquiry. Tried resetting scale
of objects and changing duration of actors on the timeline to no avail.
Tried to create a Shockwave object that replicated the primitive in every way
including size (6cm) and default textures but still got no display of the
augmented object. Primitives work fine. Got an additional offer for
help by someone willing to look at importing our Shockwave 3D object in place
of the primitive. Waiting for reply. Song suggested her computer
did not meet the minimum recommended requirements.
7.13.05
Still waiting for that reply. Making a short screen
capture video to document DART success so far.
7.14.05
Caught up on our documentation. Looked at script and
focused on one part of code regarding model hierarchies and display but didn't
know where to go from there. Got response from Maribeth pointing out the
solution in that area we had focused on. Figured out that the
marker patterns used by DART are mapped to the same coordinate system, creating
a mega-pattern. Officially requested
and was granted webspace from Gavin.
7.15.05
Tried to get propeller/plane animation to appear
unsuccessfully. Couldn't even get the plane to appear. Attempted
rescaling the plane with no success. Decided to create a more simple test
animation of a cube that would oscillate on x, y, and z axes. The cube
appeared but didn't animate.
7.18.05
Song suggested looking at the LINGO behavior for playing
keyframe animations. This led to the discovery of the "Actor
Actions" DART event which allowed one to play an animation upon receiving
a "cue". A simple time-based cue set to start playing the
animation immediately allowed us to successfully see the cube/axes
animation. Based on this success, we tried the more complex
plane/propeller Shockwave 3D model animation and were also successful with this.
However, in doing so we noted several artifacts with regard to the translation
of models from Cinema 4D to Shockwave 3D format--deformations and array copy
instances and some textures didn't appear to work.
7.19.05
Continuing from the previous day's success, we
investigated how to initiate different kinds of cues to start, stop, and
manipulation animations. Specifically, we were able to use the keyboard
to control animation sequences. This may prove to be very useful since we
may pass SMS type messages between Mission Control and the Window to control
augmented content. We successfully placed two separate augmented objects
upon the stage. Figured out how to standardize model scales.
Discovered this by changing the size of a planet that our little Star Trek ship
orbited without changing the scale of the ship. Exported models aren't
given absolute units but are simply given relative numerical values, therefore
having objects of the same scale is as simple as having the overall sizes be
numerically close. Successfully associated augmented content with a
different set of fiducial markers. We experimented somewhat to no avail
with changing marker orientation definitions to learn more about them.
Found a weird off-ratio tracking problem with some files but this was fixed by
rebuilding the .dir file. We figured out how to standardize the augmented
models' orientation and how the axes were translated upon import/export.
This was related in part to figuring out the mapping and the world coordinate
system for both the markers and how the objects were displayed in the augmented
view.
7.20.05
Looked at DART Wizardry and Physics. Wizardry
appears to allow communication between to different DART applications using
standard IP addressing (cool). This may also lead to a technical solution
to Mission Control/Hubble Window communications. The Physics behaviors
would allow gravity and other aspects to be added to our 3D models with
"relative" ease. Spent 4 hours trying to catch up on documentation
but not getting much done due to video compression problems. Emailed
Gavin about FTP access problem.
7.21.05
After
giving up, we decided to live with out-of-sync audio in a Flash Video (FLV)
format for video documentation of our successes. Caught up on remaining
documentation and started to work on putting our site together and uploading
it. Practically finished with DART investigation but would like to see
how a DART application appears on the PC especially since it is likely that a
mobile Hubble Window will be on a PC platform due to Apple's lack of such
products.
7.22.05
Uploaded first version of website.
7.26.05
Started searching websites for grant info.
7.27.05
Found a few good grants that may be applicable from NSF
and NASA.
7.28.05
Emailed Ray regarding making contacts with the Chabot
Space & Science Center for possible partnership. Read more in-depth
about grant options.
7.29.05
Received reply from Ray who suggested we contact James
since he thought that former students had partnered before with Chabot.
8.1.05
Began searching for corporate grants. Searched for
different tracking options and costs/benefits. Most systems are expensive
(~$10,000+). Remembering that Conspiritus had used a tracker of some
sort, we go to their website and try to send them an email to find out what
they went with and why.
8.2.05
Continued searching for corporate grants. Found the
IDEAS grant which sounds ideal. Settled on a few different AR tracker
options. Need further investigation. Low cost option with high
range but possibly bad accuracy and tethered to field antenna is DC magnetic
tracker, SpacePad used for many VR games. ~$1000
8.3.05
Visited the Exploratorium to get content, design, and
construction ideas.
8.4.05
Continued searching for corporate and government grants.
8.5.05
Continued searching for corporate and government
grants. Song added a PayPal donate
button since we're now looking into funding possibilities.
8.10.05
We investigated another possibility discussed in our
original project proposal--markerless, feature-based tracking. We
downloaded and test ran two demo programs from the CV Lab in Lausanne.
One tracks facial features and adds AR glasses and a mustache. This
tracked X, Y, & Z position information but seemed buggy and would not track
pitch, roll, and yaw orientation information unlike the code they're using in
their own labs. The other demo would only track the specific cover of a
book they had programmed. It appeared it might be possible to change this
tracking data, but it used a very unusual format that didn't appear to be very
often used or well-documented elsewhere on the web.
8.19.05
Brainstormed content idea shift towards human relationship
with the heavens/space throughout history.
8.23.05 - 8.24.05
Continue web search and bookmarking possible products
which may serve as a sensor-based tracker instead of, or in addition to,
optical fiducial markers. Worked
on adding our original proposal presentation video to the site. Project
Management areas were also updated.
Start web search and bookmarking possible products which may serve as
our "Hubble Window".
8.25.05
To make sense of the overwhelming number of window
platform options Song begins work on a spreadsheet to compare the different
features, options, and drawbacks of each viable product. Stephen begins work on a
spreadsheet to compare the different features, options, and drawbacks of each
viable AR tracking product.
8.26.05
Looking for advice from Conspiritus earlier in the week on
tracking sensor technology, we discovered that Steve Kearsley works for the
Exploratorium. Finally got ahold of him today. He provided a few
tracking ideas to build upon with regard to use of the Teleo boards and how we
might be able to use them because they have Actionscript drivers which may be
accessible from Macromedia's Director which DART uses. He couldn't give us much
with regard to partnership opportunities or sensor specifics.
8.29.05
Project Management areas were updated.
8.31.05
Visited the U.S.S. Hornet for video, stills, and
information with relation to its role in the retrieval of the Apollo 11 and 12
astronauts.
9.2.05
Discussed user environment and dome room projection
possibilities. Song brought up the idea of having the table be in the
same geometric pattern of the Stonehenge arrangement or other for relation to
cosmological influence on architecture and interface design. A
hexagonal-based table would be good and would allow for six "sectors"
of information to be displayed around the table for viewing from different
points of view. Finished
spreadsheet and main analysis of window platform and AR tracking options.
If a tablet PC is used, we are leaning toward the HP Compaq
TC1100--lightweight, powerful, and relatively inexpensive for a tablet PC
(~$1000).
9.4.05
Song developed some concept sketches for a dome room user
environment with projections on the walls.
9.5.05
Did some research on symbolic representation of the
planets and their glyphs.
9.6.05
Searched the web for more "low-level" sensor technologies that we could use in conjunction with Teleo boards if we decide to make our own motion tracking sensor and program the transformations ourselves in DART. Found a good option with respect to performance and price--6DOF IMU (Inertial Measuring Unit), ~$450. Due to the unlikelihood of a partnership and outside funding, we re-evaluate the details of our comparison "component-based system". Discovering new AR Tracking options (should we use them), the component-based system seems like it could be quite powerful (better in some respects) compared to using a tablet PC and nearly half the cost. The only real drawback is the time to develop, construct, test, and troubleshoot.
9.7.05
Far behind, we begin to seriously look at the grant
deadlines, eligibility, and requirements for application. The deadline
for the IDEAS grant we'd bookmarked had already passed some time ago.
Most have. The others will not award to individuals--just
organizations. We need a partner but are quickly giving up hope on
getting suggestions from CSU faculty on who might be receptive. We don't
feel like we have the time to "cold call" those we're interested in,
and budget/content-wise it is starting to look like we could pull off a good
project without a partner or external funding source.
9.8.05
We decided to try to search around for foundation grants
and such that WILL make awards to individuals (or through schools). We
found a few but their deadlines had also passed. I thought this might be
the case initially where we would have had to apply in the Spring to get funded
for the following year but it would have been problematic to apply for a grant
at that time since we had not broken up into project teams and had no project
to propose yet. Most of the "multimedia" grants we found seemed
to also only target film projects. Our program 9and project's) particular
niche seems to be a hard area to find funding for. We pretty much agree
at this point that we're pretty much on our own with regard to funding.
9.10.05
Song
discovered some information indicating that 3D panels defining markers in the
shape of a cube/room is possible. Though we had an idea on this earlier
this summer, we didn't know where to begin. Song's discovery led to
Stephen finding resources explaining how to perform the necessary mathematical
matrix calculations required to define a matrix panel of virtually any shape
(2D or 3D) for strategic placement of world coordinate markers within the
user's environment.
9.11.05
Project Management areas were updated.