Talk:3D computer graphics

From Wikipedia, the free encyclopedia
Jump to: navigation, search
          This article is of interest to the following WikiProjects:
WikiProject Graphic design (Rated Start-class, Low-importance)
WikiProject icon This article is within the scope of WikiProject Graphic design, a collaborative effort to improve the coverage of graphic design-related subjects on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Low  This article has been rated as Low-importance on the project's importance scale.
 
WikiProject Animation / Computer (Rated Start-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Animation, a collaborative effort to build an encyclopedic guide to animation on Wikipedia. If you would like to participate, you can edit the article attached to this page, help out with the open tasks, or contribute to the discussion.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
Checklist icon
 Mid  This article has been rated as Mid-importance on the project's importance scale.
 
Taskforce icon
This article is supported by the Computer animation work group (marked as High-importance).
 
WikiProject Computing (Rated Start-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
 

Reorganization[edit]

Both the current page and the (aborted?) rewrite at Talk:3D computer graphics/Temp seem to be a bit of a mess. How do people feel about the following basic structure:

  1. Introduction
  2. Real-time vs Non-real-time
  3. Overview of process from start to finish (for a layman)
  4. Mathematics
    • Coordinate systems
    • Transformations
    • Projection
  5. 3D object representation
    • Polygonal meshes
    • Implicit surfaces
    • Constructive solid geometry
  6. Visible surface determination
    • Naive approach: back to front sorting (Painter's algorithm)
    • Ray casting
    • Z-buffer algorithm
  7. Shading
    • Basic ideas
    • Light sources
    • Ray Tracing
    • Programmable shaders
    • Transparency
    • Reflection
    • Texture mapping
    • Shadows
  8. Content creation
  9. 3D APIs
  10. 3D Rendering Software
  11. 3D Rendering Hardware

Would a rewrite based on this be welcomed or are people happy with the current efforts? How much do people like the current text both on the main page and at Talk:3D computer graphics/Temp vs. wanting to see something new? — FishSpeaker 08:08, 24 February 2007 (UTC)

The proposed structure looks good to me. Oicumayberight 08:21, 24 February 2007 (UTC)
I'd say that's way too much detail for what should be an overview article. I think this article should read like a primer on computer graphics rather than a manual on how to produce them. I think a better ide would be:
  1. Introduction
    • Overview of process from start to finish (for a layman)
  2. Modelling (or representation
    • Polygonal meshes
    • Implicit surfaces
    • Constructive solid geometry
  3. Shading/Texturing
    • Light sources
    • Texture mapping
    • Ray Tracing
    • Transparency
    • Reflection
    • Cast Shadows
  4. Rendering
    • Real-time vs Non-real-time
    • Visible surface determination (maybe)
      • Naive approach: back to front sorting (Painter's algorithm)
      • Ray casting
      • Z-buffer algorithm
    • Animation
    • Mathematics (maybe)
      • Coordinate systems
      • Transformations
      • Projection
And in all likelihood removing the sections on mathematics, visible surface detirmination, and content creation to other pages. Most if not all of these sections should have more detailed treatments on their own pages. Since most of these could be an entire life's work that shouldn't be hard. Adam McCormick 05:08, 18 March 2007 (UTC)
I think we're actually thinking along the same lines. I wasn't expecting that each bullet point would be an entire section, but rather a sentence or two explaining in basic terms the given concept and its importance to 3D graphics, with liberal use of links to more detailed pages. I think the biggest problem with the current page is that too much attention is paid to a few aspects of 3D graphics, while many fundamental concepts are completely absent. The fact that our two outlines overlap so much leads me to believe we're on the right track.
Regarding ordering, here's some of my thinking:
  • I put Mathematics first because so many of the other topics (and 3D graphics in general) depend on it. How can you explain polygonal meshes without introducing the concept of a vertex (represented as a vector)? How can you talk about visible surface determination without discussing projection? Perhaps you could survive by using links to other articles and keeping Mathematics later, but I feel pretty strongly that Mathematics has to be a section on the page. Coordinate systems, transformations, and projection are fundamental concepts in 3D graphics and I think it would be a disservice to the reader to omit mentioning them.
  • Really, this brings up the ordering of all the main sections. It seems like there are two obvious ways to do this: 1) a natural ordering of the material where each section builds on the previous section, or 2) ordering based on accessibility and popularity. It seems like I was ordering based on (1) and you were ordering based on (2). Are there any guidelines or have there been any fruitful discussions about the relative merits of these approaches elsewhere on wikipedia?
  • On a smaller scale, in shading, I think there's a natural flow from light sources to ray tracing to programmable shaders to transparency to reflection. Although texture mapping is important, I think it's largely separate from that progression. Perhaps the right thing to do is not set an order now, and just see what works best when the prose is actually written.
  • I just noticed that 3D Animation forwards to 3D graphics. Yikes! That's definitely a topic that needs its own page. I wonder if we can get away with just mentioning it in the introduction rather than giving it its own section.
FishSpeaker 01:45, 26 March 2007 (UTC)
Hmmm, I just got caught up on all of the merging/splitting discussion. It's unclear to me what the currently planned path forward is with regard to this page. Can someone clarify? — FishSpeaker 02:04, 26 March 2007 (UTC)
Ok, two things, first, 3D animation should have forwarded to Computer animation, as it does now. Second the future of this section seems to be under active discussion as there has recently been a lot of dissention about how to interpret this page's mission, here's where I think we stand:
  • Computer graphics is going to be a discussion of the academic aspects of CG including what is studied and by whom
  • This page is going to act as a very general overview of the process of creating 3D computer graphics with lots of intenal references to give the reader good information and a basic idea of how computer graphics are created.
  • Each section of this page (ie 3D Modeling, Animation and Layout, and 3D Rendering) are subsets of entire articles on these subjects rather than complete treatments.
Overall, I think the goal is to convey the bisic steps of computer graphics and to give some idea of the steps involved to create 3D graphics and to give internal links to all of the subtopics of 3D computer graphics where the reader can learn more. In this way this page becomes more of a general overview rather than a "How To" with software references. Adam McCormick 16:11, 26 March 2007 (UTC)

Merge with Computer Graphics[edit]

I think this article should be merged with the Computer graphics article because the subjects are identical and they treat a lot of the same information Adam McCormick 05:02, 18 March 2007 (UTC)

I have created a merged version in my sandbox User:Alanbly/Sandbox/3D Computer Graphics. Feel free to change it or leave suggestions (suggestions/discussion preferred) on the talk page. Thanks! Adam McCormick 07:35, 20 March 2007 (UTC)
Alright, so i'm going to be WP:bold, and maybe then someone will give me some input. After all, reversions are cheap. Still needs a copy edit for someone better at it than I am. Adam McCormick 02:01, 21 March 2007 (UTC)
Strongly Oppose merge. This does not work at all. The computer graphics article may be in bad need of a re-write, but it should not be oversimplified to 3-D computer graphics. 2D Vector graphics and 2D Raster graphics are utilized way more than 3-D computer graphics and have there own dynamics. The Computer graphics article should be the parent article of 3D computer graphics and 2D computer graphics. Oicumayberight 05:52, 21 March 2007 (UTC)

Reverting the merge[edit]

This was not an appropriate merge / redirect. The purpose of the 'Computer Graphics' page was to discuss the academic/scientific discipline of computer graphics which is a subfield of computer science. Please try to understand that this is not the same as the more general topic of 3D computer graphics (which also embodies entertainment, hobbyist programs like POV ray, other applications, etc.) and deserves its own independent space on the wiki. As strange as this may seem to someone not familiar with the field, it is an important distinction. Please do not perform this merge again. Trevorgoodchild 05:45, 21 March 2007 (UTC)

Perhaps more should be said about 2D computer graphics on that page. Oicumayberight 05:55, 21 March 2007 (UTC)
I agree that that is what The CG page Should be, but that is not what it was. I was planning on rewriting the CG page after the merge but I think reverting the merge is a little insulting. This is my degree field too. I resent you presumption. Please discuss this before you revert my changes again. Adam McCormick 06:02, 21 March 2007 (UTC)
If this is truly your field, then you'll understand why the revert was necessary. How many times have you said, "I do computer graphics," and been answered with, "Oh, so do you use Maya or 3DS Max?" or something similar. It is so very important that these concepts be separated in people's minds.—The preceding unsigned comment was added by Trevorgoodchild (talkcontribs).
I agree that there is a difference, but I DO NOT feel that the page that exists at Computer Graphics accomplished this goal. Yes, there needs to be an article on the field of CG, and it should be seperate from 3D graphic design, but all of the information on CG right now belongs in 3DCG. CG should start from scratch with your "Mission" in mind. Adam McCormick 06:15, 21 March 2007 (UTC)
The is the computer generated article. Oicumayberight 06:28, 21 March 2007 (UTC)

A reminder for you of WP:COOL. Calm down before editing please. Also, please sign your post --KZ Talk Vandal Contrib 06:10, 21 March 2007 (UTC)

I agree that we need to be cool, i'm just trying to establish a dialog. Adam McCormick 06:15, 21 March 2007 (UTC)
Also, although I have no personal views of this matter, the merge information will stay in the article, to prevent edit warring, until this matter is settled to an agreement. Thank You. --KZ Talk Vandal Contrib 06:15, 21 March 2007 (UTC)
I really think the appropriate thing to do is to have one page called "Computer Graphics" and one called "3D graphic design" as we have now (or 3D graphic art, or whatever it is you want to call what people on CGSociety do). There are really two major classes of things people in "graphics" do: 1. some of them develop new mathematics, technology, and software. 2. some of them use this software to create images and animations. The two are completely different tasks and should be separated into two pages. Trevorgoodchild 06:19, 21 March 2007 (UTC)
I agree with that, as I have said several times at this point, but the question is content. I think CG is not valuable (in addition to 3D graphic design) in its current state. It needs to be an article on the fields of study, not on the graphic design process. Adam McCormick 06:23, 21 March 2007 (UTC)
The division into modeling, animation, and rendering is on the fields of study. Those are the broadest categories - you might hear a professor say, "I work on animation," or "I work on rendering," etc. More specifically you might hear one say, "I do simulation," or "I do geometry stuff." Which is why there are sub-categories. Maybe it needs clarification that those are not processes but rather sub-disciplines. Trevorgoodchild 07:01, 21 March 2007 (UTC)
You're right, there's not much there -- only because it hasn't been around for long enough. I should've added the "stub" tag, which is what I'll do now. Trevorgoodchild 06:38, 21 March 2007 (UTC)

New name[edit]

I'm strongly against the new name. There is already too much blurring the distinction between design and production. This page speaks mostly of production techniques and says little about design (problem-solving) or design concerns. There should be at least 3 separate articles involving 3D graphics:

  1. about technology using wire frame models;
  2. about production techniques using 3d modeler software, maybe title "3D modeling".
  3. about graphic design in general, 2D and 3D.

I don't think there are graphic designers who specialize in 3D graphics unless they are also specialists in production, in which case they are more engineers or technicians than designers.

If any renaming should be done, this article should be split into 2 articles. One with the original name, and another titled "3D modeling". The original title should be an overview of how 3D computer graphics work and the applications. The "3D modeling" should be about the skill you are calling "3D graphic design". Oicumayberight 06:25, 21 March 2007 (UTC)

I agree with the renaming issue. Calling the production of 3D Images "Graphic Design" trivializes a Billion dollar industry. Verly little in this article can be characterized as Graphic design. Adam McCormick 06:33, 21 March 2007 (UTC)
Ok, how about "3D Digital Art"? CGSociety refers to itself as the "society of digital artists," so we'd at least have a citation. ;) —The preceding unsigned comment was added by Trevorgoodchild (talkcontribs).
There's already a computer art, digital art and computer generated imagery article. It would only add to the confusion and end up getting merged. I suggest this article be split into 3D modeling about the skill and 3D rendering about the technology. Oicumayberight 06:51, 21 March 2007 (UTC)
Sounds good to me. Trevorgoodchild 06:56, 21 March 2007 (UTC)

I thought this was being split into "3D modeling" and "3D rendering"? Why the revert? Trevorgoodchild 07:16, 21 March 2007 (UTC)

This 3D computer graphics article is the main overview article. Oicumayberight 08:03, 21 March 2007 (UTC)'

Split[edit]

The split is complete. The articles probably need a template that includes the other 3D related articles as well. Oicumayberight 08:21, 21 March 2007 (UTC)

This article is now a stub. I suggest that we put back in the Overview section with main article links to the split off pieces. Done. Adam McCormick 16:41, 21 March 2007 (UTC)

Technical Information[edit]

I don't believe there is enough technical information regarding the Mathmatics and Projection of 3D graphics in this article, indeed, it almost reads like a disambiguation of 3D Computer Graphics sub-fields. Do people not research such subjects on Wikipedia for technical insight? Rather than simple industry phrase explanation, and redirection to sub-fields, as what seems to have happened here. Neobros 22:25, 2 July 2007 (UTC)

Most of the technichal information can be found in the subtopics of this page. It has been intentionally left general so as to make the subject more accessible to the average reader. This is also the page on creating CG and such not that for research fields. This is the accepted form for subjects as extensively documented as CG as you may see with such pages as Physics Adam McCormick 23:33, 2 July 2007 (UTC)
In theory, granted. However I can hardly find a line of information relating to the basics of 3D Computer Graphics (Mathmatics, Projections and so forth) in either this main article or relating sub-articles. As opposed to Physics where the terminology is so broadly applied to several sub-fields without a singular origin, 3D Computer Graphics can be pinned down to a hand full of basic instigators, of that the sub-fields in this case (Modeling, Animation, Rendering) are production processes to the end-goal of 3D Graphics, rather than actual sub-fields. As this is the case, I can only see reason in highlighting the base technical workings in the main article, while explaining in more clarity the detail of the production processes in sub-articles. To summarize, surly we can add advanced technical information without losing simplicity on this subject? Rather than simply occluding all detailed technical information many users fail to find here. Neobros 00:00, 3 July 2007 (UTC)
Regardless, upon futher examination of the Reorganization, the new page will fit the technical criteria I'm requesting. If nobody else has anything to add on the subject, I'll delete this discussion. Neobros 01:12, 3 July 2007 (UTC)
Don't bother deleting the discussion, someone else may benefit from the discussion. Adam McCormick 01:20, 3 July 2007 (UTC)

See also[edit]

I have just removed/relocated many of the links from this section, please only add new links if they are relevant to 3D-CG in general and are not otherwise represented in the subtopis of this category of articles. Otherwise the link may belong more readily to a sub-topic. Adam McCormick 16:23, 31 July 2007 (UTC)

Irrelevant links[edit]

I am of the opinion that linking normal everyday words like "size" and "location" is pointless unless the links go to a specific explanation of ther usage in this context. As it stands these links go to disambiguation pages which don't clarify the meanings of the terms but complicate them. There is a dictionary definition of these terms and they are not being used inconsistently with those definitions, thus the link is not relevant and should not be added. If there is an article on size or location that is relevant to this article beyond 3D modeling then link it, but just linking the word is pointless. Adam McCormick 19:23, 18 September 2007 (UTC)

How is modelling used today in games?[edit]

It's a question I would like answered which i think should also be mentioned in the article: Are the models designed in a 3d modelling program, saved, and then imported into the game at run-time and manipulated from there or are they designed in the program and then translated into the source using coordinates or something? 212.120.248.128 (talk) 14:17, 16 December 2007 (UTC)

I don't believe there is any single answer to your question. Every single system uses a different method. In general, any "pretty" scenes are just saved as video, and any "ugly" scenes are rendered real time by feeding coordinates into the GPU. Most of the information you'd like to see added is actually done (in most cases) by a Game engine, the game designers never touch the source code, they just build the characters and go. This is also not the place for such specifics, what your talking about is a very tiny part of the science and art of 3D computer graphics. Hope that helps, let me know if you need more information. Adam McCormick (talk) 05:32, 18 December 2007 (UTC)
I'm sorry, but I had to chime in here. Adam, I don't understand your response. It sounds like you're a little ill-informed or an industry outsider. As someone in the video game industry (and a programmer at that), let me field this question.
Almost modern video games use models created in modeling programs such as 3D Studio MAX, Maya or Alias. Indie game developers may use some of the free 3D modeling packages, but the concept is the same. After the model is finalized, it is almost always saved in a proprietary format. This format is either cooked up by the developers themselves or dictated by the game engine they are using. But in many cases, the developers are using an "engine" they developed themselves.
About ten years ago, computer weren't capable of generating attractive, real-time 3D graphics and many "cut-scenes" were played as video. However, today, many cut-scenes are played within the game engine itself, almost no canned video needs to be used.
Within the game itself, the 3D models are imported (read in from files) into memory and manipulated from there. I can't think of any cases where the 3D coordinates of a model would be hard-coded into a game's source code. Sometimes a model and its texture are bound together in the data file, sometimes they are separate (a much more likely scenario—slapping a different texture on a model can give it a completely different look). Once in memory, models are shoved through the GPU to be rendered onscreen (this is simplifying things quite a bit, but that's the basic idea). The GPU handles a lot of calculations related to 3D rendering, but it's quite an overstatement to say it does it all. 3D content shoved through the GPU doesn't have to end up "ugly" and in many cases doesn't. On modern hardware, a great deal of 3D scenes can look much better than pre-rendered video did even just five years ago.
In no cases do the game designers "just build the characters and go". First off, unless they are wearing two hats, game designers do not build art assets, such as 3D models. They may specify how they are supposed to look and write dialog, but they do not develop the art. Most models are built by game artists and some are purchased (and some are purchased and then modified).
Secondly, you are correct, when you said "the game designers never touch the source code." But your response is misleading. Why in the world would a game designer touch source code? It's not their job. Modifying source is the job of programmers. No game—I mean no game—is shipped without custom code. Many game engines are available for purchase, but none are used straight "out of the box." All require custom programming in order to make a game. Some light-weight games can be built with a game engine using scripts, but these are the exception rather than the rule. Some developers modify the engine source code directly, some interface with it via an API, but none just use the engine without some programming.
This is quite a bit off-topic, and discussing it in any meaningful detail wouldn't be done here, but I hope this gives you a better idea of how 3D models are used in modern programming. — Frecklefσσt | Talk 15:13, 18 December 2007 (UTC)
Your final statement is really my point and in that I agree completely. Thank you for the verbose answer.
However, when you say there are no cut scenes I just can't agree. My background is Computer Graphics, albeit on the research and academia end, but I know high-performance prerendering when I see it. Maybe this practice doesn't exist on the best-of-the best top-end hardware, but even the previews I've seen of FFXIII have cutscenes that are (since you seem to take offense at "ugly" and "pretty") more attractive than the non-prerendered, gameplay sequences. I know there are game systems that do no do cut scenes (the N64 comes to mind) but most I've seen do (in fact some of the more popular cut secenes are cobbled into DVD's).
Also, I wasn't using "game designers" in any specific sense either, I was trying to be general, perhaps more correct would have been "people who create games." It also seems that you are speaking as part of one specific companies way of doing things. I know there are many "new" games built onto older games rather than specifically built themselves, this was more of what I meant by never touching the code, or the engine when producing the new game. No changes in game mechanics, physics, gameplay, etc... just changes in text and imagery. Adam McCormick (talk) 17:01, 18 December 2007 (UTC)
Well, I'm not trying to pick a fight and you're from academia, not the video game industry, so your perspective is different. Yes, many modern games do use video (or FMV) for cutscenes. But many do cutscenes within the engine itself. And some will use FMV for some cutscenes and in-engine rendering for others. It all depends. My point was that not all cutscenes are pre-rendered.
A generic way of referring to someone involved in the production of video games is "video game developer". :^) — Frecklefσσt | Talk 22:23, 18 December 2007 (UTC)

The Hungarian breakthrough[edit]

The Leonar3Do

http://www.youtube.com/watch?v=Oo_1UIovqKc&feature=related http://www.youtube.com/watch?v=qPiB_Ad7IC4 http://www.youtube.com/watch?v=zWRBUcMbzkw&feature=related —Preceding unsigned comment added by 81.182.75.100 (talk) 09:41, 29 January 2010 (UTC)

Figure text trouble[edit]

One of the figure texts (second figure in section Rendering) does not make sense:

Flat shading,3DCG Dunkerque class battleship

--Mortense (talk) 19:24, 28 January 2011 (UTC)

It does... to us 3d artists at least heh. Anyway, made it more human readable. :P Linked to wikipedia article discussing the topic. --ObsidinSoul 19:39, 28 January 2011 (UTC)

6D images[edit]

Following the reference to 'rendering 6D images' in the introduction, the article does not make it clear what '6D images' are, neither are there internal or external links to pages that do. Ssmethurst (talk) 16:15, 22 September 2011 (UTC)

It was nonsense because it was some unnoticed vandalism. I've reverted it. - MrOllie (talk) 16:23, 22 September 2011 (UTC)

"Due to 3D printing, 3D models are not confined to virtual space".??[edit]

Surely a 3D print of a 3D model is a 3D rendering of the model, with all the same imperfections that a 2D rendering has. The 3D print is not the model. It is like saying because of laser printers a 2D model is not confined to virtual space.

I propose to remove that sentence unless there are objections, if I remember... ˥ Ǝ Ʉ H Ɔ I Ɯ (talk) 01:18, 31 May 2014 (UTC) paraphrased ˥ Ǝ Ʉ H Ɔ I Ɯ (talk) 03:42, 8 June 2014 (UTC)

No objection here. I thought it was weird when I first saw it as well. — Frεcklεfσσt | Talk 13:29, 10 June 2014 (UTC)