Sunday 22 May 2011

Completed EMA - hooray!

Just completed and uploaded the final version of my ECA for T175 - and I made sure that I did it a few days before the deadline to avoid that last minute mad rush that will no doubt make OU's servers explode!

I was going to write a review for T175, but since this (I think) its last presentation before being merged with the M150 module, it won't be of any use to anyone.

Just got to wait for 3-4 months for the final result now!

Monday 16 May 2011

First draft submitted for T175 EMA

As per advice given in several places, I've just submitted a first draft of my EMA for T175.

I haven't finished all of the questions, or thoroughly checked my work so far, but I think that it would be enough to gain the minimum EMA mark required (40%). I've done this to ensure that there is no chance of failing the whole module because of leaving my submission too late, problems with a busy OU submissions system, or any other issues. I wouldn't relish having to do (and pay for) the whole module all over again!

Saturday 7 May 2011

T175 ECA - Q2 Completed

Just completed the web page required for Q2 concerning information about VPNs and Private Networks. This took quite some time! I'm fairly happy with what I have for it though.

Tuesday 3 May 2011

Progress in the T175 ECA

I've completed Q1 and Q4 of the ECA (End of Course Assessment) for T175.


I thought I'd be a little bit clever and do Q4 first, because it relates the last area studied in the cource material (eGovernment) - the idea being that I would remember a lot of it and not have to re-read a lot of stuff.

...Wrong!

It made little difference really, I still had to re-read a lot of stuff. But I'm glad that Q4 is done, because I think I'll enjoy answering the others more, being a little more interested in the subject areas.

Wednesday 27 April 2011

Nice Easter Weekend (started ECA now)

What lovely warm weather for us in the south of England over the long Easter weekend! Perfect for lots of doubles tennis (and as a result picking up a few more hand/wrist/arm/side strains and minor injuries).

I've just tentatively started work on the T175 ECA. Surprisingly difficult to resume study after a break of 4 or 5 days - but the seal is broken now, and it should be easier tomorrow evening.

Wednesday 13 April 2011

T175 TMA04 complete

Just completed and submitted TMA 04 for Block 4 of T175. It took a long time in the end - I've an on/off flu-ey type state of health for the last few weeks, and it hasn't gone away yet. It's ripping through my place of work - we must all have suppressed immune systems due to living to cleanly!

Friday 1 April 2011

Almost finished Block 4, submitted CMA43

Just a few more subsections of Block 4 Part 3 to go. I've completed and now submitted CMA43. One more question in TMA04 to start (I think) and after I've completed that, I can start building up some enthusiasm for tackling the EMA!

Monday 21 March 2011

Block 4 Part 2 complete

I've completed the study of Block 4 Part 2 (Road Transport). It was particularly interesting to read a little about how GPS works

It's beyond the scope of the T175 level 1 module, but it's also interesting (and somewhat bewildering) to note that GPS systems have to take into account effects predicted by the theories of special and general relativity - "time dilation" due to the relative motion of the satellites (they are not geostationary), and time compression due to closer proximity of Earth-bound clocks to a massive object (i.e., the Earth). The combined effect, according to this article published by the Ohio State University is that GPS satellites seem to gain about 38 microseconds per day compared with earth-bound clocks - and if the GPS system didn't account for this, it would have been hopelessly inaccurate within hours.

I don't have even a superficial understanding of special or general relativity (who does?) because every time I read about it, it makes no real sense - so I forget about it within minutes!

Wednesday 9 March 2011

Block 4 Part 2 Started, TMA04 Started

I've completed question 4 of TMA04, which relates to work done in Block 3, thereby avoiding the need to revisit Block 3. Also question 1 relating to Block 4 part 1 is complete, so that I needed only a cursory glance at the part 1 material - I'd only just completed it. This does indeed seem to work better than saving up the whole TMA. Still took a surprising amount of time, though!

Pretty much halfway through the alarmingly thick Block 4 printed book now, which is an important psychological milestone :-)

Friday 4 March 2011

Block 4 Part 1 completed

Just completed Block 4 Part 1 (Health). Whilst it isn't exceptionally difficult material, there are a lot of activities that I find very time consuming if I want to do them all properly, so I'm having to put the hours in!

I've made a start on CMA43, answering the questions that relate to Part 1 (and Block 3). I'm also likely to tackle TMA04 question 1, relating to Part 1 - thereby taking heed of the lesson learnt previously when leaving the whole TMA until after completing a whole block.

That's the theory, anyway.

Monday 28 February 2011

Reached 3.2 of Block 4 Part 1

I've reached secton 3.2 (Telemedicine on a budget) of Block 4 Part 1. That big fat book for Block 4 is pretty daunting!

This is my effort for Activity 17, asking me to think about a fairly routine visit to a doctor's surgery, and then the ICT systems that could help to avois an actual visit:

A fairly routine visit to the doctor’s surgery:

I’m going to assume that I have a moderate fever. I might need to drive to the surgery, or perhaps take a train if it’s some distance away. When I arrive, a duty nurse may take some personal details such as name, address, contact numbers, etc. (I haven’t registered there before). When I get to see the doctor, I may be asked what my symptoms are. The doctor may measure my pulse, take my temperature, and look at my skin. I may also be asked about my medical history, and about any allergies that I have. Finally, I might be diagnosed and given a written or printed prescription for medicine.


Using typical home or small office ICT equipment, the visit to the surgery might be avoided. I could be presented with an online form to enter my personal details into, and then to select my general ailment from a list, perhaps with a few specific symptom choices. The system might instruct me to measure my own pulse, and to make a choice of how my skin looks. I’m not sure that I could take my own temperature, though! From my choices and measurements feedback, the system could give a tentative diagnosis, and possibly prescribe either some actions for me to take (which might include calling a number for futher questioning and advice, or some medicine.


As it happens, I needed to look more at assisting ICTs such as digital cameras, microphone, web cameras, etc.

Wednesday 23 February 2011

TMA T175 03 Completed and Submitted

I've just finished off and submitted TMA03 for T175, covering Block 3. It seemed a bit of a slog, and I've now eaten up pretty much all of the time I'd gained by completing the study books a week or two early.

A lesson has been learned hopefully - I shouldn't necessarily wait until I've studied all of the block material to begin work on the TMA. I found that the earlier material wasn't at all fresh in my mind, and so to an extent I had to relearn some of it in order to answer question 2 in particular. Doh!

Thursday 10 February 2011

Completed Block 3 Part 3

I have just completed Block 3 Part 3 of T175, including the section concerning CGI animation, which looks like an interesting and highly technical subject matter.

Here is my attempt at taking notes from the spoof "Stain X" movie clips and transcripts. I still find it very difficult to condense my notes into far fewer words, whilst retaining the significant meaning, so they are longer than they ought to be:



Block 3 Part 3 Activity 36

Introduction
Computers contribute hugely to the entertainment industry, including movies where CGI can be difficult to detect.
Alias produced a spoof advert “Stain X” where cockroach characters appear to perform in a real set, with their Maya CGI (Computer Generated Imagery) software.
Movies are sequences of frames changing fast enough to look as though they are moving.
Eadweard Muybridge produced movie sequence of 20 frames of a cantering horse in the early 19th century.
Disney hand-drew every single frame of their animated movies in the mid 20th century.
The role of CGI software is to provide tools allowing artists to use and manipulate 3D models and actors, then to generate the frame sequences.

Section 1
The 3D artist’s working environment is a regularly structured flat mesh that can be tweaked and twisted to create interesting objects.
CGI programs let you rotate and shade mesh object views, and each mesh intersection point can be finely manipulated along 3 axes.
A mesh is represented in a CGI program as a table of numbers, and each point on the mesh is drawn from the numbers representing its position in 3D space (somewhat similar to a graph in a spreadsheet).
Maya also has a sculpting tool amongst others that deforms the mesh as if the artist were using a brush; using this the artist can produce very complex meshes.
The finer-grained the mesh, the larger the table of numbers, and the harder the computer has to work to calculate and display it.
Texture, colour and lighting are added to meshes to make them resemble something real.

Section 2
Modern CGI programs provide artists with object templates that they can manipulate and add textures, colours and lighting, and with stock textures.
For realism, the programs can also apply ‘digital masks’ to objects, e.g., a photograph of a real face that is distorted so that it can be wrapped around a model head.
Lighting is also important for realism; a light source is just another object to be controlled and animated to a CGI program, as is fog.
Maya ensures that light automatically interacts with fog and other objects.

Section 3
One way that an object’s movement through a scene is realised is by defining a trajectory or path, that the GCI program uses to generate frame sequences.
The 3D artist can manually define a path, or more efficiently use mathematical functions such as sine waves.
The CGI program can make objects wrap around curved paths, and paths can be re-orientated independently of the objects following them to provide realistic movement.
The program can also provide other clever realism effects such as perspective, fog, dappled lighting, and automatic shadows, which it can apply to or from objects not in the field of view.
The sophisticated algorithms that CGI programs use to produce motion and lighting simulation are very computation intensive; different programs compete on the scope, efficiency, and ease of use of the algorithms.
A CGI program can also put the viewer directly into the scene, following a camera trajectory, important for giving dynamic views of animated objects.
Creating realistic experiences requires objects to interact with the scene, such as a ball bouncing across a surface.
This can be done using key-framing; specifying key positions of an object and leaving the program to generate trajectories from them (interpolation).
The artist can manually adjust interpolated trajectories to enhance realism.
Artists can also add character to objects by stretching, squeezing, and rotating them (specifying these manipulations as more key frames) further enhancing realism.

Section 4
From animation of ‘simple’ objects to animation of digital actors that behave and interact as they move through a scene, is a big step.
Most CGI programs provide pre-constructed models of articulated animals or humans called digital puppets.
The animation of the digital puppets must mimic biological components in order to look credible.
Joints can be added and moved independently of each other, then a tubular mesh added providing a surface for texture and colour.
A problem for 3d artists is unnatural mesh deformation when joints are rotated, which can be made more natural with tweaking and more CGI techniques.
The CGI program can impose relationships between joints so that when one is moved, the others also move in a natural way; only one joint then needs to be key-framed.
Objects such as a ‘balloon’ can be placed inside a limb mesh to simulate changing muscle size.
Facial animation is still a very difficult task despite all of the tools provided by CGI programs.
Digital actors need to be able to convey emotions by means of facial expressions, so eyebrows, eyelids, eyes, mouth, tongue and lips are facial features than can be manipulated.
Mouth movements can be key-framed using a ‘sync’ feature that simulates the digital actor speaking.
In each key frame, all of the facial features must be set individually.

Section 5
The character Edna’s arms are set up so that can be manipulated in a way that appears natural for an anthropomorphic cockroach.
When a locator on an arm or leg is moved, for example, the limb can be posed ready for key-framing.
The CGI program allows creation of a walk cycle using just four key frames; it interpolates between them to generate around forty frames.
This sequence can be saved as animation ‘clipart’, and repeated over time to make Edna move forwards through a scene.
For more realism, texture, a surface to walk on, lighting and shadows are added. Changing camera angle and position invokes automatic perspective.
The towel that Edna is hanging out is also a CGI object, created from a mesh with special properties that allows it to behave like cloth, and removes the need for key frames for its movement.
The four cockroach actors in the movie are created from the same wire-frame model, but have different outfits with the cloth property applied.
Scene one consists of both a CGI movie and a real movie showing the rear of terraced houses where a camera pans down from a high position.
The CGI camera must perform panning identical to the real camera, achieved using special marks place in the scenes for alignment that are removed in the final scene.
CGI software has made traditional animation techniques almost redundant, but requires a much wider range of technical skills that are combined with artists’ imagination.

Section 6
Section six is the completed Stain X example movie sequence with a seamless mixture of real scenery and digital cockroach actors moving and interacting with it, and with each other.

Wednesday 9 February 2011

Online Tutorial (Elluminate Live! session)

Took part in my first online tutorial this evening, using Elluminate Live!. The subject matter was using the system itself, a little numeracy involving some of the calculations necessary for T175, and a little about the use of apostrophes! It was quite fun, especially when I realised that I did have a built-in mic on my laptop. Co-ordination of the mouse, keyboard, calculator, notepad, and TV was pretty tricky though.

Afterwards I immediately completed some of question 4 in TMA03, which concerned the online tutorial experience, while it was fresh in my mind. How to squeeze it into less than 300 words though?

Thursday 3 February 2011

Graphics Section Completed

Just completed Block 3 Part 3 section 4, concerning fundamentals about graphics file format colour depth and compression. Being something of a (lapsed) amateur photographer, these are things that you learn about fairly thoroughly (with the exception of the overview of techniques used in lossy/lossless compression). If you don't, you end up running out of space very quickly (trying to keep everything as raw or uncompressed BMP files, or with a lot of small and poor quality over-compressed files. Trial and error, the best way to learn anything where a small mistake isn't likely to involve a death!

Here's a photo of a lizard taken in Cheddar Gorge, Somerset, England (August 2009). The original is stored as a TIF file with LZW compression - which does little to reduce its size. I'd like to store photos as PNGs, as the lossless compression is better, but for some reason PNG files do not retain any EXIF data (data such as date and time, camera model, lens focal length, aperture size, etc.). That's an horrendous oversight, and is perhaps one reason why PNG hasn't become more widespread.

Thursday 27 January 2011

Block 3 Part 3 started

I've completed the "Spreadsheet basics" and activities in Block 3 Part 3.

I'm fairly handy with MS Excel 2003 to a point, but I've never been great with creating charts, so this has been a really useful set of exercises. Logarithmic scales have been slightly harder to interpret than I anticipated - might need to practice that a bit.

Here's my version of the 2-series chart for Activity 11 (The Grapevine - successive generations of people telling a certain number of others a story):

Block 3 Part 2 Completed

Block 3 Part 2 ("Entertainment and information") is complete.

I've found that I haven't followed my study plan awfully well - I've not studied at all (or only for 20-30 minutes) some days, but have studied for up to 3 hours on other days when the plan suggests 1-1/2 to 2 hours. It all adds up to me being 1-2 weeks ahead of schedule though.

Monday 24 January 2011

I Survived Blue Monday!

Whether it was the 17th or 24th January this year, I appear to have survived "Blue Monday" (and so did my colleagues where I work, I think)!

Plus, I've also finished another section (5) of Block 3 Part 2, concerning signal transmission with a healthy dose of the fundamental mathematics necessary to begin understanding transmission delays. Good stuff!

Friday 21 January 2011

CMA T175 42 Submitted

CMA42 is completed and submitted - looking for a full-house this time ;-)

Wednesday 19 January 2011

Block 3 Part 2 and Interwebnet Woes

Interwebnet has been down for several days, how I survived that long without broadband, I will never quite know :-)

Been cracking on with Block 3 Part 2 - completed:
section 1 ("Bringing the news on the back of a horse")
section 2 ("From newsreels to real news")
section 3 ("Newsgathering now")
- which was all pretty interesting stuff concerned with the development of ICTs in news gathering.

Part-way through section 4 now ("Anatomy of a digital camcorder") which is interesting to me, being a sometime amateur photography enthusiast. The material is showing its age a little though - shows how quickly things move when technical examples seem a little out of date having been written just 5 or 6 years ago!

Tuesday 11 January 2011

Block 3 Part 2 - Introductory Activity (Queensland Floods)

Here's what I came up with for this introductory activity about how ICTs have changed our access to information about the world...


Block 3 Part 2
Introductory Activity

Think of a current event in the news - something that is happening a long way away from where you live (in a different continent, perhaps). Think about what you have seen and heard about it on the television and radio. Have you seen it in live television pictures?
Spend half an hour seeing what you can find on the web about it, especially see how close you can get to it - what local people are saying about it, as reflected in local newspapers, perhaps web-broadcasts of radio stations or even personal web pages or blogs of local residents.

Queensland Floods
Something that is happening at the moment (January 2011) in Queensland, Australia, is a series of devastating flash floods affecting a large number of people.
I have already watched several news stories that included recorded near-live video footage of the flooding events as they occurred, including first-hand interviews with people affected.

bbc.co.uk
A brief search of the news portal in the BBC’s website (bbb.co.uk) revealed the following material:

“Australia floods: 72 missing and at least eight dead” – this article includes direct and paraphrased quotes from the affected regional authorities and unnamed eye witnesses, and a photo of a flooded town street. It was written by the BBC’s ‘correspondent in Australia’, Nick Bryant – who quotes himself within it!

“Australia floods: Brisbane braces for surge” – this article, written by the same author a day later, includes more detail, further quotes, two video clips containing flood footage (one dubbed with an eye-witness interview), a satellite image, a graphical map, and a photo. There are 6 different media in this one relatively short article.

“In pictures: Queensland flash floods” – this page is a slideshow of detailed images of the floods actually occurring and the damage caused, with descriptive captions.

Australian media

The Morning Bulletin, Rockhampton – “Rockhampton Flood update 02/01” – this page from a local newspaper online edition contains 22 photo images of affected homes and people.

The Courier-Mail, Brisbane – “Queensland Premier Anna Bligh says…” – this article from an online newspaper, written by ‘AAP’, includes some statistical information, numerous quotes from Australian authorities, and an animated radar map of local weather. Below the article are submitted readers’ comments, at the time there were 25 comments, but only the last three were available to read. Comment 25 of 25 says:

Help those in need... of Banksia Beach Posted at 4:24 AM Today [12/01/2011]
To Merv of Gympie (25 of 25), This planet has been going through various weather cycles for thousands of years with little input from humans to pollute this planet. We are now going through one of those ever changing cycles. Sure more people are living on this planet, so it is rather obvious that more people will be affected. Was global warming responsible for floods in 1893,1931 and 1974. Move on Merv... Maybe you should drop the climate change expert role and make yourself more useful by coming down to Brisbane and help those unfortunate people that will be affected by the coming floods.

Social Media

Many of the above sources included links to share links or extracts of the material on various social media networks, such as Facebook and Twitter.

“Queensland Floods” – a Facebook page set up by Brisbane based Courier-Mail newspaper “to leave tributes, videos, photos and get info about the Qld Floods”. Contributions of news and information are being posted by the site founders and other media outlets. Contributions of local knowledge and first-hand accounts are being posted by Facebook users that appeared to be people affected by the floods.

Saturday 8 January 2011

Block 3 Part 1 complete!

Completed Block 3 Part 1, WAHOO!

Block 3 Part 1 section 5 Activities


Block 3 Part 1 section 5 (Computer Game Technology) - I thought I'd share my answers for Activities 31 to 34 (images not included):

The Wizardry of Id
D. Kushner
August 2002
IEEE Spectrum.

PART 1 (for Activity 31)
[...] Through its technologically innovative games, Id has had a huge influence on everyday computing, from the high-speed, high-color , and high-resolution graphics cards common in today’s PCs to the marshalling of an army of on-line game programmers and players who have helped shape popular culture. 

[...]

To bring these games to the consumer PC and establish Id as the market leader required skill at simplifying difficult graphics problems and cunning in exploiting on-going improvements in computer graphics cards, processing power, and memory size.
To date, their games have earned over US $1 50 million in sales, according to The NPD Group, a New York City market research firm.

It All Began With a Guy Named Mario
The company owes much of its success to advances made by John Carmack, its 31-year -old lead programmer and cofounder who has been programming games since he was a teenager .

Back in the late 1 980s, the electronic gaming industry was dominated by dedicated video game consoles. Most game software was distributed in cartridges, which slotted into the consoles, and as a consequence, writing games required expensive development systems and corporate backing. 

The only alternative was home computer game programming, an underworld in which amateurs could develop and distribute software. Writing games for the low-powered machines required only programming skill and a love of gaming. 

Four guys with that passion were artist Adrian Carmack; programmer John Carmack (no relation); game designer Tom Hall; and programmer John Romero. While working together at Softdisk (Shreveport, La.), a small software publisher , these inveterate gamers began moonlighting on their own titles.

At the time, the PC was still largely viewed as being for business only. It had, after all, only a handful of screen colors and squeaked out sounds through a tiny tinny speaker . Nonetheless, the Softdisk gamers figured this was enough to start using the PC as a games platform.

First, they decided to see if they could recreate on a PC the gaming industry’s biggest hit at the time, Super Mario Brothers 3. This two-dimensional game an on the Super Nintendo Entertainment System, which drove a regular television screen. The object was to make a moustached plumber , named Mario, leap over platforms and dodge hazards while running across a landscape below a blue sky strewn with puffy clouds. As Mario ran, the terrain scrolled from side to side to keep him more or less in the middle of the screen. To get the graphics performance required, the Nintendo console resorted to dedicated hardware. ‘We had clear examples of console games [like Mario] that did smooth scrolling,’ John Carmack says, ‘but [in 1990] no one had done it on an IBM PC.’

PART 2 (for Activity 32)
After a few nights of experimentation, Carmack figured out how to emulate the side-scrolling action on a PC. In the game, the screen image was drawn, or rendered, by assembling an array of 1 6-by-1 6-pixel tiles. Usually the on-screen background took over 200 of these square tiles, a blue sky tile here, a cloud tile there, and so on. Graphics for active elements, such as Mario, were then drawn on top of the background.

Any attempt to redraw the entire background every frame resulted in a game that ran too slowly, so Carmack figured out how to have to redraw only a handful of tiles every frame, speeding the game up immensely. His technique relied on a new type of graphics card that had become available, and the observation that the player’s movement occurred incrementally, so most of the next frame’s scenery had already been drawn. 

The new graphics cards were known as Enhanced Graphics Adapter (EGA) cards. They had more on-board video memory than the earlier Color Graphics Adapter (CGA) cards and could display 1 6 colors at once, instead of four . For Carmack, the extra memory had two important consequences. First, while intended for a single relatively high-resolution screen image, the card’s memory could hold several video screens’ worth of low-resolution images, typically 300 by 200 pixels, simultaneously, good enough for video games. By pointing to different video memory addresses, the card could switch which image was being sent to the screen at around 60 times a second, allowing smooth animation without annoying flicker . Second, the card could move data around in its video memory much faster than image data could be copied from the PC’s main memory to the card, eliminating a major graphics performance bottleneck.

Carmack wrote a so-called graphics display engine that exploited both properties to the full by using a technique that had been originally developed in the 1 970s for scrolling over large images, such as satellite photographs. First, he assembled a complete screen in video memory, tile by tile - - plus a border one tile wide [Figure 1 5].
If the player moved one pixel in any direction, the display engine moved the origin of the image it sent to the screen by one pixel in the corresponding direction. No new tiles had to be drawn. When the player’s movements finally pushed the screen image to the outer edge of a border , the engine still did not redraw most of the screen. Instead, it copied most of the existing image - - the part that would remain constant - - into another portion of video memory. Then it added the new tiles and moved the origin of the screen display so that it pointed to the new image.

In short, rather than having the PC redraw tens of thousands of pixels every time the player moved, the engine usually had to change only a single memory address - - the one that indicated the origin of the screen image - - or , at worst, draw a relatively thin strip of pixels for the new tiles. So the PC’s CPU was left with plenty of time for other tasks, such as drawing and animating the game’s moving platforms, hostile characters, and the other active elements with which the player interacted.

PART 3 (for Activity 33)
[Carmack] had been experimenting with 3-D graphics ever since junior high school, when he produced wire-frame MTV logos on his Apple II. Since then, several game creators had experimented with first-person 3-D points of view, where the flat tiles of 2-D games are replaced by polygons forming the surfaces of the player’s surrounding environment. The player no longer felt outside, looking in on the game’s world, but saw it as if from the inside. 

The results had been mixed, though. The PC was simply too slow to redraw detailed 3-D scenes as the player’s position shifted. It had to draw lots of surfaces for each and every frame sent to the screen, including many that would be obscured by other surfaces closer to the player .

Carmack had an idea that would let the computer draw only those surfaces that were seen by the player . ‘If you’re willing to restrict the flexibility of your approach,’ he says, ‘you can almost always do something better .’

So he chose not to address the general problem of drawing arbitrary polygons that could be positioned anywhere in space, but designed a program that would draw only trapezoids. His concern at this time was with walls (which are shaped like trapezoids in 3-D), not ceilings or floors.

For his program, Carmack simplified a technique for rendering realistic images on then high-end systems. In raycasting, as it is called, the computer draws scenes by extending lines from the player’s position in the direction he or she is facing. When it strikes a surface, the pixel corresponding to that line on the player’s screen is painted the appropriate color . None of the computer’s time is wasted on drawing surfaces that would never be seen anyway. By only drawing walls, Carmack could raycast scenes very quickly.

Carmack’s final challenge was to furnish his 3-D world with treasure chests, hostile characters, and other objects. Once again, he simplified the task, this time by using 2-D graphical icons, known as sprites. He got the computer to scale the size of the sprite, depending on the player’s location, so that he did not have to model the objects as 3-D figures, a task that would have slowed the game painfully. By combining sprites with raycasting, Carmack was able to place players in a fast -moving 3-D world. The upshot was Hovertank, released in April 1991. It was the first fast-action 3-D first-person action shooter for the PC.
[...]

Instant Sensation
For Id’s next game, Wolfenstein 3D, Carmack refined his code. A key decision ensured the graphics engine had as little work to do as possible: to make the walls even easier to draw, they would all be the same height.

This speeded up raycasting immensely. In normal raycasting, one line is projected through space for every pixel displayed. A 320-by-200-pixel screen image of the type common at the time required 64 000 lines. But because Carmack’s walls were uniform from top to bottom, he had to raycast along only one horizontal plane, just 320 lines [Figure 1 6].

[...]
By this time, Carmack was programming for the Video Graphics Adapter (VGA) cards that had supplanted the EGA cards. VGA allowed 256 colors - - a big step up from EGA’s 1 6, but still a limited range that made it a challenge to incorporate all the shading needed for diminished lighting effects.

The solution was to restrict the palette used for the game’s graphics, so that 16 shades of each of 1 6 colors could be accommodated. Carmack then programmed the computer to display different shades based on the player’s location within a room. The darkest hues of a color were applied to far sections of a room; nearer surfaces would always be brighter than those farther away. This added to the moody atmosphere of the game.

Activity31
How would you describe, in your own words, the content of this first part of the article? Try making yourself a mindmap or a set of brief notes. I felt that it fell naturally into three main sections. Do you agree?

Referring to the first part of “The Wizardry of Id” (D. Kushner, August 2002, IEEE Spectrum)
The article introduces Id as a successful company influential upon everyday computing through technologically innovative games, which it says needed skill and cunning to bring to the PC market.
It introduces the 4 founders who wrote games for PCs at a time when the market was dominated by games consoles more suited to the purpose. They began by trying to recreate the hit game Super Mario Brothers 3.
This part of article seemed to me to be in two parts.

Activity 32
In your own words, write a few sentences about how Carmack managed to speed up the scrolling. Think about the keywords ‘speed’, ‘memory’ and ‘image updating’.

Carmack figured out how to draw only a few 16x16 tiles every frame. The then new EGA graphics cards could hold several screens’ worth of low resolution graphics, and the fact that they could move data around in this memory very quickly. He wrote a graphics engine that exploited these properties by assembling a complete screen in the video memory, adding tiles to the edges as necessary when the game player ‘moved’, then changing the starting address the starting address of the screen image origin to effect ‘scrolling’. This saved the PC having to redraw tens of thousands of pixels every time the player ‘moved’.

Activity 33
(a) What is raycasting? How did Carmack simplify the technique? (b) How did Carmack obtain sufficient shades to produce an adequate display of the gaming environment?

(a) Raycasting is the rendering of scenes by extended lines from the players position to the direction in which they are facing. When a line strikes an object surface, a pixel is rendered in an appropriate colour at that position (this way, object surfaces that would not be seen anyway are not rendered, saving a great deal of time.
Carmack simplified this technique by only rendering walls, and making them all the same height. This meant that instead of having to raycast using up to 64,000 lines (one for each pixel in a 320x200 screen), he only needed to raycast only the horizontal plane, which could be done with just 320 lines.
(b) Carmack obtained sufficient shades to produce an adequate environment display by restricting the colour palette used to 16 shades each of 16 colours (the new VGA cards allowed a maximum of 256 colours on the screen). The darkest shades of these colours were applied in far sections of a room; lighter shades for those closer.

Activity 34
Spend a few minutes reviewing your work on this extract, including your responses to Activities 31- -33. Given my comments on the activities, how satisfied were you with your answers? Did you find parts of the extracts difficult to understand? If so, which?

When compared to the comments given at the end of Activities 31 to 33, I am fairly satisfied with the answers that I have given – with the possible exception of 31, where I could have better described the content of the first part of the article. I extracted relevant technical details (by highlighting text in the study book), and my answers to 32 and 33 compared fairly well with the given comments.
I found the article moderately easy to read, as I had some basic prior knowledge of both video cards, and what raycasting (or “raytracing”) was. I do agree with the study material authors comments about quoted figures not being particularly helpful though!

Wednesday 5 January 2011

Block 3 Part 1 - Compression

Just completed sections 4.1 and 4.2 dealing with compression. I found this really interesting, and tackled the little activities with relish!

Here's my version of the simple compression of a poem extract (it's almost but not quite the same as the given solution):

Activity 26


Now try coding this short extract from a poem by Wendy Cope (1992) by suggesting a dictionary and then encoding the extract:


I am a poet.
I am very fond of bananas.
I am bananas.
I am very fond of a poet.
I am a poet of bananas.
I am very fond.

(a)   Build up a dictionary:

Code
Word(s)
1
I am
2
a poet
3
very fond
4
bananas
5
of

(b)  Encode the poem extract:

1 2.
1 3 5 4.
1 4.
1 3 5 2.
1 2 5 4.
1 3.

Sunday 2 January 2011

Progress in Block 3 Part 1

I've reached section 2.5 of Block 3 Part 1. Much of the material regarding analog/digital comparisons and binary numbers are duplicated in M150, my previous module. It's good to be refreshed though. Here's my answer for activity 15:

Activity 15


A common bitmap format for displaying reasonably high-quality computer images, such as those generated by digital cameras, is to use 24 bits for each pixel.
(a)  How many pixels are required for 1024 x·768 screen resolution?
How many bits of data does this require for each image?
For a resolution of 1024 x 768:
1024 x 768, or
786,432 pixels are required.
Bits of data required if the picture uses 24 bits per pixel:
1024 x 768 x 24, or
18,874,368 bits.
(b)  At the time of writing this, I am still using a ‘56 kbps’ dial-up modem that connects (if I’m lucky) at 44 kbps. Roughly how long would such an image take to download at 44 kbps?
44 kbps = 44,000 bits per second.
Time required to send 18,874,368 bits at 44,000 bits per second is
(18,874,368 / 44,000) seconds, or
c. 429 seconds, or
7 minutes 9 seconds.
(c)  By the time you read this my broadband connection will be installed, operating at 512 kbps, if not more. How long will a single image take to download over a 512 kbps connection?
Time required to send the same image at 512 kbps (512,000 bits per second) is
(18,874,368 / 512,000) seconds, or
c. 37 seconds.
(d)  My DVD drive sends data to a computer processor at about 3 Mbps. Roughly how long would it take to transfer one image? Try to answer this question without using a calculator, by comparing the DVD transfer rate with the broadband rate
The DVD drive is faster than the broadband connection by a factor of 3,000,000 (3 Mbps) to 512,000 (512 kbps), or about 6.
The approximate time taken for the DVD drive to transfer the picture is therefore about (37 / 6) seconds, or
About 6 seconds.


Saturday 1 January 2011

Block 3 Part 1 section 1 Activities

My answers for two of the activities in Block 3 Part 1 (section 1)...

Activity 1:


Figure 2 – representation of a portable DVD player

Some functions performed by the DVD player for each category:

Receives from user
Receives commands to play, rewind, fast forward, etc. from user via buttons or remote control.
Sends to user
Sends audio and video signals to user via LCD screen and speakers.
Manipulates
Manipulates encoded binary data into video signals recognised by the LCD screen.
Stores/Retrieves
Stores user settings such as audio volume, screen brightness, last position reached when playing a DVD.
Retrieves data stored on DVD discs.

Activity 3:

ICT systems in the context of entertainment – availability in time and space:
System
Availability in time
Availability in space
Radio and TV broadcasting
Only at time of broadcast
Any place within range of broadcasting antennae
Film (cinema)
Only at time of showing
Only at a cinema showing the film
Video / DVD
Any time once the video / DVD is physically available
Any place with access to a video / DVD player
The internet
Any time
Any place with access

Christmas All But Over

Happy New Year to everyone!

Christmas is pretty much over bar the shouting (and eating of nuts/biscuits/chocolate), so it's time to begin work on Block 3 of T175...