<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8814514</id><updated>2011-04-21T19:42:50.515-07:00</updated><title type='text'>Adventures in OpenGL</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8814514.post-111514491080068103</id><published>2005-05-03T11:18:00.000-07:00</published><updated>2005-05-03T11:28:30.800-07:00</updated><title type='text'>Done?</title><content type='html'>We will be demo-ing our work for the class in a little under 3 hours. Currently emulated is: the cpu, the graphics, and the controllers. Most of this seems to be, finally, working correctly.&lt;br /&gt;&lt;br /&gt;Since, we aren't emulating MMCs we can't run games that date after the NES' launch. Furthermore, since there is no sound emulation, games that attempt to synchronize execution with the sound unit will simply not work. This unfortunately includes Mario... A fix would be to implement sound... an easier one would be to fake the interrupts. Neither of these are going to get done by 3 pm today.&lt;br /&gt;&lt;br /&gt;However, we will be demoing several "fully" working ROMs: Ice Hockey, Arkanoid, Donkey Kong and Hydlide.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-111514491080068103?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/111514491080068103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=111514491080068103' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111514491080068103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111514491080068103'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2005/05/done.html' title='Done?'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-111263936040016674</id><published>2005-04-04T11:24:00.000-07:00</published><updated>2005-04-04T11:29:20.400-07:00</updated><title type='text'>NES BIt Manipulation...</title><content type='html'>... is a pain!&lt;br /&gt;&lt;br /&gt;In order to draw a sprite the nes creates a 4-bit value which it uses to index a color in a pallete. These 4-bits (conveniently) come from disparate locations in memory. The lower two bits come from a "pattern table" however they are 8 bytes apart. The upper two bits come from the "sprite table". &lt;br /&gt;&lt;br /&gt;Simply, I must access three seperate locations in memory, selectively make them fit together, look up a color, and then plot to draw one pixel. I can't wait until this is done...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-111263936040016674?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/111263936040016674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=111263936040016674' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111263936040016674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111263936040016674'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2005/04/nes-bit-manipulation.html' title='NES BIt Manipulation...'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-111091297677417943</id><published>2005-03-15T10:45:00.000-08:00</published><updated>2005-03-15T10:56:16.830-08:00</updated><title type='text'>Refactoring</title><content type='html'>As previously alluded to. I am no longer presently working on Unicon. About a week after I received that part-time job, I found out about an opening for a Software Engineer with the Physical Science Laboratory here on campus. Not-so-long-story made short: I got the job. So, now I am programming Decision Making Processes (A.I.) for The Man. Unfortunately, I can't go into detail here.&lt;br /&gt;&lt;br /&gt;However, I am currently still taking 2 classes at the university. One of those is Advanced Software Engineering, for which we must work in groups to complete a semester project. Myself and two other intrepid individuals convinced the teacher to permit us to begin work on an Object Oriented NES emulator. &lt;br /&gt;&lt;br /&gt;Work is progressing, the CPU is being emulated by someone who is not me, and is supposedly nearly done.&lt;br /&gt;&lt;br /&gt;I, on one hand, am working on the PPU (Picture Processing Unit), specifically the area of sprite loading, and displaying (as opposed to backgrounds/scrolling).&lt;br /&gt;&lt;br /&gt;Unfortunately, I won't be doing much work on this until the end of spring break; 2 weeks away.&lt;br /&gt;&lt;br /&gt;More to follow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-111091297677417943?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/111091297677417943/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=111091297677417943' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111091297677417943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111091297677417943'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2005/03/refactoring.html' title='Refactoring'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-111091229129110253</id><published>2005-03-15T10:30:00.000-08:00</published><updated>2005-03-15T10:44:51.296-08:00</updated><title type='text'>Unicon, OpenGL and Compilers</title><content type='html'>So, I'm only on the Unicon project as a volunteer right now (IE I'm not actually doing anything). However, before downgrading myself (more on that later) I noticed a number of interesting parallels between computer graphics optimizations and compiler optimizations.&lt;br /&gt;&lt;br /&gt;One big thing that the Unicon 3D graphics facilities does is create a display list of everything that you have commited to the scene. Everytime something changes (the camera moves, some animation occurs, new objects are placed in the scene) this display list is processed from front to back; automatically redrawing the scene for you. &lt;br /&gt;&lt;br /&gt;It's convient and definitely not something that OpenGL does for you. However, calls placed to GLBegin() and GLEnd() (which are analogous to C's scoping facilities: '{' and '}') aren't, to the best of my knowledge, free. Hence, good programmers try to draw all of their triangles/quads/lines/etc at once. The afforementioned Unicon display list is obviously temporaly ordered. This likely creates instances where numerous display list elements could be combined together inside of one set of GLBegin and GLEnd.&lt;br /&gt;&lt;br /&gt;Unfortunately, textures, materials, recursive drawing routines, et cetera make the problem unsolvable by simply combining list elements that use identical drawing primitives. It finds itself relatively analogous to the out-of-order-execution problem that Intel tried to hoist on compiler writers with the IA-64 (Itanium) architecture.&lt;br /&gt;&lt;br /&gt;I really wish that my compiler course had covered optimizations, we only covered correctness, and a little bit of context sensitive error reporting.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-111091229129110253?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/111091229129110253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=111091229129110253' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111091229129110253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/111091229129110253'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2005/03/unicon-opengl-and-compilers.html' title='Unicon, OpenGL and Compilers'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110789169747829729</id><published>2005-02-08T11:33:00.000-08:00</published><updated>2005-02-08T11:41:37.476-08:00</updated><title type='text'>An Update</title><content type='html'>I actually finished the program that I was working on for school back in late december, I just got distracted and never wrote about it. It does have a few bugs, and it doesn't do bump-mapping, but it does do everything else I set out to do.&lt;br /&gt;&lt;br /&gt;If anyone actually wants to see pictures, say so, and I'll upload some.&lt;br /&gt;&lt;br /&gt;At present, I am working for one of the professors at New Mexico State University. His pet project is a programming language called Unicon, a superset of Icon. I'm going to be helping to improve the OpenGL support in Unicon. It does do OpenGL but its functionality is terribly limited, and rediculously slow.&lt;br /&gt;&lt;br /&gt;However, before I can get to mucking around with how Unicon implements OpenGL I need to learn Unicon (and thus Icon). I need to get Unicon running on my system and make a few test programs. I want to make something that will fully flex all of Unicon's present functionality. I'm thinking about a 3D model viewer.&lt;br /&gt;&lt;br /&gt;I've been hired to work on this for 10 hours a week on this, so I should be able to make some decent progress.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110789169747829729?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110789169747829729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110789169747829729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110789169747829729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110789169747829729'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2005/02/update.html' title='An Update'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110258032239979620</id><published>2004-12-09T01:04:00.000-08:00</published><updated>2004-12-09T00:18:42.400-08:00</updated><title type='text'>Almost Done</title><content type='html'>I didn't do any programming last week, and I forgot to update after I finished programming two weeks ago. I've made some decent progress.&lt;br /&gt;&lt;br /&gt;Currently the program can:&lt;br /&gt;&lt;br /&gt;-Dynamically load numerous data files, and display them all.&lt;br /&gt;-A simple grid has been added to make determining where you are looking on the x-axis simpler.&lt;br /&gt;-The graphs can have segments of any length and color.&lt;br /&gt;-Musical texture is presently implemented with translucency.&lt;br /&gt;-The frame-rate has been locked so the program will run at the same speed on multiple computers.&lt;br /&gt;-To make the graph easier to understand the program can load and play MP3 files. While doing so a blue line moves through the graph in time with the music.&lt;br /&gt;&lt;br /&gt;The program can not:&lt;br /&gt;&lt;br /&gt;-Remove a graph once it has been loaded.&lt;br /&gt;-Rotate the graph based on the orientation of the camera. IE "Up" is not relative, it is a fixed direction.&lt;br /&gt;-Display bump-maps or anything that could really help with depicting musical texture.&lt;br /&gt;-The resolution can't be changed, it is fixed at 1280 x 800 (in both windowed and fullscreen mode)&lt;br /&gt;-Display a help screen of any kind.&lt;br /&gt;&lt;br /&gt;There are probably an uncountable number of bugs. I'm also sure that it's extremely slow.&lt;br /&gt;&lt;br /&gt;I don't think I'll get the bump-mapping implemented. I intend to do the others if I can. Finally, I'd like to add in some mouse-controls, but those can wait. The teacher also asked that I find a way to print "key words" from song lyrics on the screen. That should be fairly easy to do.&lt;br /&gt;&lt;br /&gt;My group members screwed up their data-files or else I'd post some pictures.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110258032239979620?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110258032239979620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110258032239979620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110258032239979620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110258032239979620'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/12/almost-done.html' title='Almost Done'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110135512879310129</id><published>2004-11-24T19:50:00.000-08:00</published><updated>2004-11-24T21:49:37.476-08:00</updated><title type='text'>Moving Forward - 前に進む事</title><content type='html'>We had our first milestone today. That makes the project sound a lot bigger than it is, but I can't think of anything else to call the review session that we did. I've decided to call the program that we presented to the teacher version 1, because it actually does what the original specifications where.&lt;br /&gt;&lt;br /&gt;To review, we are trying to create a 3D image that will depict the sounds in a piece of music. In the case or rev 1 it was Miles Davis' "Bitches Brew". In the case of rev 2 it will be The Beatles' "I Am The Walrus". &lt;br /&gt;&lt;br /&gt;For Bitches Brew the program read in a intensity and pitch values from a text file. Those values where representative of the pitch and intensity of the trumpet at 0.5 second intervals.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://img91.exs.cx/my.php?loc=img91&amp;image=screenshot_rev_1.jpg"&gt;&lt;img src="http://img124.exs.cx/img124/9788/screenshot_rev_1_small.jpg" alt="Image Hosted by ImageShack.us" align="right"&gt;&lt;/a&gt;&lt;br /&gt;This is the graph of the first 64 seconds of Bitches Brew. The x axis is time, the y axis is pitch, and the z axis is intensity.&lt;br /&gt;&lt;br clear=all&gt;&lt;br /&gt;&lt;br /&gt;For "I Am The Walrus" I am going to try to add the following items:&lt;br /&gt;&lt;br /&gt;-Display multiple graphs at the same time.&lt;br /&gt;-Allow the data file to specify its own time increments.&lt;br /&gt;-Allow the data file to specify color.&lt;br /&gt;-Allow the data file to specify texture.&lt;br /&gt;&lt;br /&gt;The last two items are meant to depict the musical concepts of the same name. Color will be done, of course, with color. Texture is a bit different. For now I'm just going to use the alpha channel to depict texture. However, the ultimate goal is to implement bump-mapping.&lt;br /&gt;&lt;br /&gt;I guess I better get to work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110135512879310129?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110135512879310129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110135512879310129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110135512879310129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110135512879310129'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/11/moving-forward.html' title='Moving Forward - 前に進む事'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110100881163852642</id><published>2004-11-20T19:23:00.000-08:00</published><updated>2004-11-20T19:47:43.330-08:00</updated><title type='text'>A First! - 初めてだ！</title><content type='html'>Today I received my first nebulous request for change! My other group members aren't programers, they are self-proclaimed media-artists. Anyway, I received the following picture attached to an email that said:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://img100.exs.cx/img100/5597/data.jpg" alt="Image Hosted by ImageShack.us" align = "left"&gt; "While thinking about saving the data, it seems that like in the attached image, reality and the graph may differ. I think that it would be better if we where correct the graph to this."&lt;br /&gt;&lt;br clear=all&gt;&lt;br /&gt;&lt;br /&gt;The left hand problem is the same as the right hand one and they both exist. However, it is a problem present with the data given to me, not with the program. Essentially rapid changes in the music that occur between our sampling points will be left out. There's nothing that can be done except to increase the number of data samples over a given period.&lt;br /&gt;&lt;br /&gt;That's not entirely true. I could allow the data file to also specify the time of a given sample. Presently it assumes that each line is a fixed chronological distance from its neighbors. This wouldn't be too difficult to implement, I just don't know that I'll have the time to fix it in 3 days. I am a student.&lt;br /&gt;&lt;br /&gt;Of course I guess if I was crazy the data file could hold data for elements like curves, spikes and plateaus. Or maybe the user could use my program to directly manipulate the data. It sounds interesting to me, but I have no idea where the programming for something like that would even start.&lt;br /&gt;&lt;br /&gt;We'll meet this week and see if we can find a solution that leaves everyone happy, or at least me not having to do much work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110100881163852642?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110100881163852642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110100881163852642' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110100881163852642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110100881163852642'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/11/first.html' title='A First! - 初めてだ！'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110098082166103442</id><published>2004-11-20T11:39:00.000-08:00</published><updated>2004-11-20T12:03:01.346-08:00</updated><title type='text'>The State of Things - 今の状況</title><content type='html'>Revision 1 of my graphing program is complete.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://img55.exs.cx/img55/5334/screenshot01.jpg"&gt;&lt;img src="http://img66.exs.cx/img66/3738/screenshot01_small.jpg" alt="Image Hosted by ImageShack.us" align="right"&gt;&lt;/a&gt; The X-axis extends to the right and is representative of time. Y proceeds up and is pitch. Z is headed down out of the screen and is the intensity.&lt;br /&gt;&lt;br clear=all&gt;&lt;br /&gt;&lt;br /&gt;Currently the program:&lt;br /&gt;*reads from a fixed data fill in the same directory as the executable&lt;br /&gt;*allows translation with the arrow-keys and page-up, page-down.&lt;br /&gt;*allows rotation with a,c,d,s,x,z&lt;br /&gt;&lt;br /&gt;Currently I want to:&lt;br /&gt;*label the axis&lt;br /&gt;*add in mouse control&lt;br /&gt;*lock the speed of scrolling, and rotating so that it can be used on other computers&lt;br /&gt;*print out various information at the top of the screen&lt;br /&gt;*allow the user to select new graph-data-files while the program is running&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110098082166103442?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110098082166103442/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110098082166103442' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110098082166103442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110098082166103442'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/11/state-of-things.html' title='The State of Things - 今の状況'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110076247285577312</id><published>2004-11-17T23:13:00.000-08:00</published><updated>2004-11-17T23:21:12.856-08:00</updated><title type='text'>Derailed! - 脱線された！</title><content type='html'>My Music and Information professor remembered today that I can program. I'm now working with the other students on making a basic 3D graph representation of a track from Miles Davis' "Bitch's Brew". The axis are to be:&lt;br /&gt;&lt;br /&gt;x-time&lt;br /&gt;y-pitch&lt;br /&gt;z-"intensity"&lt;br /&gt;&lt;br /&gt;The two other people in my group are in charge of filling out a data file for my program to use to draw this graph. We going to start out using 0.5 second sampling intervals, if that looks totally bunk-tacular then we'll probably lower it town to 0.25. We'll currently be analyzing only Miles' trumpet, with pitch and intensity values ranging from 0-255.&lt;br /&gt;&lt;br /&gt;Despite being a little irritated at being pulled from my current graphics project, this does sound interesting to me. However, today I was a mess, came home after class and took a 2 1/2 hour nap. This leaves me only 2 or so hours to program today. I'll see what I can do...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110076247285577312?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110076247285577312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110076247285577312' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110076247285577312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110076247285577312'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/11/derailed.html' title='Derailed! - 脱線された！'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-110069235866721580</id><published>2004-11-17T03:40:00.000-08:00</published><updated>2004-11-17T03:52:38.666-08:00</updated><title type='text'>Day 3 - 第三日</title><content type='html'>This is going up quite late.&lt;br /&gt;&lt;br /&gt;Last week I only managed to get through two and a half lessons.&lt;br /&gt;&lt;br /&gt;Lesson 7: Texture Filters, Lighting and Keyboard Control. Nothing too impressive. Texture filters means linear, bilinear, mip-mapping, and straight scaling. I can now control the why my Shin Megami Tensei textured cube spins. I can also turn on and off a single light. I tried to keep my pyramid, but kept screwing up the coordinate transformations, so I dropped it.&lt;br /&gt;&lt;br /&gt;Lesson 8: Blending. Transparencies was basically all this covered. I put a red, blue, green, and white "sheet" in front of my cube, then turned on blending. It now looks blue when behind the blue part of the sheet.&lt;br /&gt;&lt;br /&gt;Lesson 9: Moving Bitmaps in 2D Space. This one is a lot more complicated then the title lets on. It replaces almost all the existing code in favor of trying to do something cool. However, I screwed up creating a new project in Visual C and spent an hour fighting with the compiler instead of programming. I'll get it done next time.&lt;br /&gt;&lt;br /&gt;I expect that after completing lessons 10-13 (Loading and Moving Through a 3D World, Flag Effect, Using Display Lists, and Bitmap Fonts) that I'll be able to create the 3D maze program that I want to, and hopefully a little bit more. However, this will require that I remember how to work with multiple files; and if I am to combine my work with another student as the teacher wishes: programs. That is what I am not looking forward to. Everytime I attempt to divide my programs up logically (according to my mind) it explodes and kills people.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-110069235866721580?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/110069235866721580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=110069235866721580' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110069235866721580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/110069235866721580'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/11/day-3.html' title='Day 3 - 第三日'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-109929062811850997</id><published>2004-10-31T22:24:00.000-08:00</published><updated>2004-10-31T22:30:28.116-08:00</updated><title type='text'>やった！</title><content type='html'>Texturing problem fixed!&lt;br /&gt;&lt;br /&gt;I was binding my textures inside my "glBegin(GL_QUADS);" and "glEnd();" statements. This is as the techies say: "a no-no."&lt;br /&gt;&lt;br /&gt;I think I had a similar problem when I tried to make the code spawn zillions of random triangles or quads. I was doing a matrix transform inside the drawing code; also a supposed no-no.&lt;br /&gt;&lt;br /&gt;I'd muck with it more now, but I deleted the code for random drawing. That and I stayed home from school today. I was feeling a little crappy. Not can't go to school crappy though. So I stayed home on the condition that I'd get some stuff done. &lt;br /&gt;&lt;br /&gt;Program fixed, now it's on to studying.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-109929062811850997?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/109929062811850997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=109929062811850997' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109929062811850997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109929062811850997'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/10/blog-post.html' title='やった！'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-109896923670644606</id><published>2004-10-28T05:53:00.000-07:00</published><updated>2004-10-28T06:13:56.706-07:00</updated><title type='text'>Day 2 - 第二日</title><content type='html'>I started out the day by reviewing all the source-code that I had typed out from the previous week. This is 95% Windows stuff, and thus rather irrelevant to graphics, but it is something that I would like to learn.&lt;br /&gt;&lt;br /&gt;After this I worked my way through lessons 2-6:&lt;br /&gt;&lt;br /&gt;Lesson 2: Simple triangle and quadrelateral drawing. I tried to make the machine spawn zillions of little triangles when you pressed the 't' key, or quads with the 'q' button. However, Visual Studio's refusal to accept the VK_T and VK_Q constants necessitated their change to VK_F2, and VK_F3; I'd LOVE to know why that worked. With that problem over with I proceeded to spectacularly fail at the zillions-o-triangle proposal. I think I inserted the code in such a way as to monkey with the rendering pipeline. I intend to come back to this.&lt;br /&gt;&lt;br /&gt;Lesson 3: Colors. Made a blue quad, and a pretty, blended triangle. The kind with red at one corner, blue at the second, and green at the third.&lt;br /&gt;&lt;br /&gt;Lesson 4: Rotation. The triangle now spins on the y-axis with the square on the x.&lt;br /&gt;&lt;br /&gt;Lesson 5: Solids. The triangle became a pyramid. The square a cube. Still spinning.&lt;br /&gt;&lt;br /&gt;Lesson 6: Texture Mapping. I pasted a Shin Megami Tensei texture on the cube; though I originally screwed it up pretty badly, I'm not very good with mental coordinate shuffling. Then I decided I wanted a unique Shin Megami Tensei texture on each of the cube's six faces. I never quite got this working.&lt;br /&gt;&lt;br /&gt;The textures are stored in an array of GLuint's (I think). I index the array through a for-loop and try to read in six textures from six files (texture01.bmp - texture06.bmp). Somehow in all this mess I'm flinging bits where they don't belong and I appear rewriting all the textures everytime I import a new one. That is by the time I finish with texture06.bmp I have 6 seperate textures... all of texture06.bmp. &lt;br /&gt;&lt;br /&gt;As I attended a research presentation, and took a break to eat some food, that was all I had time for today. Hopefully, I'll be able to smash down this stupid texture problem and get that zillions of triangles thing working.&lt;br /&gt;&lt;br /&gt;Next week I'd like to get through the lesson 10: loading a 3D world from a data-file. Then all I'll need is joystick support and collision detection and I can try to implement my original goal of a Shin Megami Tensei maze.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-109896923670644606?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/109896923670644606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=109896923670644606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109896923670644606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109896923670644606'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/10/day-2.html' title='Day 2 - 第二日'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-109834969159997611</id><published>2004-10-21T02:00:00.000-07:00</published><updated>2004-10-21T02:08:34.683-07:00</updated><title type='text'>Day 1 - 第一日</title><content type='html'>Lesson one was the usual "skeleton" program. Consisting of all the windows setup junk, and the opengl setup not-quite-so-junk.&lt;br /&gt;&lt;br /&gt;Paging back over the code I realize that while I understand ever line, I don't remember them. That's normal, what is slightly distressing is that since the program is so big I don't even remember all the STEPS. Maybe time and a few more read-throughs will cement it better for me.&lt;br /&gt;&lt;br /&gt;The only thing I want to change about the code is the understandable-for-a-tutorial fact that it's all one big long file. Presently a 411 line file. I think I'd like to break it up into: the window proc, the setup crap, the shutdown crap, WinMain, and the rendering crap. However, using multiple files in a project has always been painful in the past, so I think I will leave this until I've done a few more lessons. That way I'll feel like I've been making progress, and will be less easily discouraged... hopefully.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-109834969159997611?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/109834969159997611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=109834969159997611' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109834969159997611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109834969159997611'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/10/day-1.html' title='Day 1 - 第一日'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8814514.post-109834704170384170</id><published>2004-10-21T01:11:00.000-07:00</published><updated>2004-10-21T01:36:03.846-07:00</updated><title type='text'>Purpose - 目的</title><content type='html'>I've decided to start this "programming blog" seperate from my normal blog &lt;A HREF="http://alske.blogspot.com"&gt;http://alske.blogspot.com&lt;/A&gt; for organizational purposes. The biggest hurdle in programming any large piece of software is keeping things organized. Being able to sift quickly through your code is invaluable. As is having design documents, and other information that may help you remember what one was doing.&lt;br /&gt;&lt;br /&gt;I have 5+ hours of class time a week to work on graphics programming. To that end I have begun going through the excellent OpenGL tutorials on GameDev.net &lt;A HREF="http://www.gamedev.net"&gt;http://www.gamedev.net&lt;/A&gt;. I should be able to go through at least one lesson per week. My current goal is to create a simple 3D maze program similar to that windows screen saver, or Phantasy Star and Persona for the more gaming literate. Ideally I it will support the keyboard and mouse, and be able to play some sort of sounds in the background. I'm shooting for texture-maps, lighting, and very basic collision detection. There will be no animation. Movement will be limited to the four cardinal directions.&lt;br /&gt;&lt;br /&gt;I intend to write in this blog after every major coding session, of which there should be at least one a week. I'm going to briefly discuss what I learned, what I accomplished, what pissed me off, what I want to know, and where I think I'm going. I have absolutely no intention of making this easily readable for the programming illiterate. I intend to talk additionally talk a lot about how I am organizing my code and engine (I hate that word) in a fair amount of detail.&lt;br /&gt;&lt;br /&gt;I do not intend this to be particularly interesting. However I would love feedback, and advice from any and all programmers who have any they wish to give.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8814514-109834704170384170?l=illucia-gl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://illucia-gl.blogspot.com/feeds/109834704170384170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8814514&amp;postID=109834704170384170' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109834704170384170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8814514/posts/default/109834704170384170'/><link rel='alternate' type='text/html' href='http://illucia-gl.blogspot.com/2004/10/purpose.html' title='Purpose - 目的'/><author><name>Adam</name><uri>http://www.blogger.com/profile/00754806423038586010</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
