0% found this document useful (0 votes)
101 views

CG.....

Notes

Uploaded by

yashrmore20
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
101 views

CG.....

Notes

Uploaded by

yashrmore20
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

CG Notes

Differentiate between Parallel projection and perspective projection.


Parallel Projection Perspective projection
The lines of parallel projection are parallel. The lines of perspective projection are
not parallel.
Projector in parallel projection is parallel. Projector in perspective projection is
not parallel.
It does not form realistic view of object. It forms a realistic view of object.
Can provide accurate view of object. Can’t provide accurate view of object.

The distance of the object from the center The distance of the object from the
of projection is infinite. center of projection is finite.
Object size remains same irrespective of Objects far away look smaller.
distance.
Used in engineering drawings, CAD, etc. Used in 3D graphics, games, etc.
Two types of parallel projection : Three types of perspective projection:
1.Orthographic 1.One point perspective,
2.Oblique 2.Two point perspective,
3. Three point perspective.
Back Face Detection and Removal:
Backface detection and removal are techniques used in computer graphics to improve
efficiency of rendering by eliminating the parts of 3D objects that are not visible to the observer
as they are "facing away" from the camera.
These techniques prevent rendering such surfaces.
Back Face: In a 3D object, a backface refers to the surface of a polygon that is not visible to the
observer as they are "facing away" from the camera.
Back Face Detection:
To detect whether a face of a polygon is a back face or not there are two methods:
1. Surface Normal Method:
• Calculate the dot product of the surface normal (N) and the view vector (V).
• If the dot product is positive (N . V > 0) the face is a backface and can be ignored.
• If the dot product is negative (N . V < 0) the face is not a backface and cannot be
ignored.
2. Z-Component Check (Simpler):
• If the z-component of the normal is negative, it’s a backface.

Backface Removal:

• Once the backfaces are detected, they are not sent to the rendering pipeline.
• This saves computational resources and optimizes rendering.
Explain the following terms with examples: i) Color gamut ii) Specular Reflection iii) Diffuse
reflection

Color Gamut

• Refers to the range of colors a device (monitor, printer, camera) can display or reproduce.
• Represents a subset of all colors perceivable by the human eye.
• Helps ensure color consistency across different devices (e.g., monitors, printers,
projectors).
• Example: A wide-gamut monitor (Adobe RGB) displays more vibrant colors than a
standard sRGB monitor.

Specular Reflection:

• Specular reflection is a type of reflection in which the light reflects at the same angle as
it strikes the surface (angle of incidence = angle of reflection).
• It creates sharp, mirror-like reflections.
• Occurs on smooth, shiny surfaces like glass, water, or polished metal.

Diffuse Reflection:

• Diffuse reflection occurs when light hits a rough surface and is scattered in multiple
directions.
• It doesn't produce clear images but gives a uniform color appearance.
• Common in matte or non-glossy surfaces like paper or walls.

Ambient Light:

• It refers to indirect, soft light.


• It is a type of lighting used in computer graphics to create realistic environments.
• It ensures objects are visible even in shadowed areas.
• Used to simulate natural light (sun light) or artificial light.
• Enhances the appearance of depth and realism in a scene.

Point Source:
• A light source that emits light equally in all directions from a single, tiny point.
• Commonly used in computer graphics to simulate lights like, light bulb or stars.
• Light spreads uniformly in all directions.
Diffuse Illumination
• Refers to light that hits a surface and scatters in all directions evenly.
• Simulates how light interacts with rough or matte surfaces.
• Produces a soft, non-reflective appearance without sharp highlights.
• Common in computer graphics for realistic lighting of objects.
Compare Gauraud shading and phong shading.
Gouraud Shading Phong Shading
Gouraud shading was introduced by Phong Shading was introduced by Phong
Henri Gouraud in 1970. Bui Tuong in 1973.

Evaluates the illumination at border Evaluates the illumination at every point


vertices and interpolates. of the polygon surface.
Interpolates colors along edges and the Interpolates normal instead of colors.
Scanline.
Cheaper than Phong Shading Costlier than Gouraud Shading

Lighting equation used at each vertex. Lighting equation used at each pixel.
Requires average processing and less Requires high processing and more time.
time.
Produces average quality. Produces good quality.

Smooth surfaces Smooth and shining surfaces

Gives less accurate results. Gives more accurate results.


Hilbert Curve:
• It was introduced by David Hilbert in 1891.
• It is a type of space-filling curve.
• The Hilbert Curve is a continuous fractal curve that can fill a 2D square space without
intersecting itself.
• It is constructed through successive approximations, each refining the curve's path
by subdividing the space into smaller sections.

Generation of Helbert curve is simple it visits center of every square grid having size 2 n x 2 n

First approximation:

• In this the square is divided into 4 quadrants and curve joins the center of all
quadrants.
Second approximation:

• In this each quadrant is further divided into 2x2 grids ending in 16 squares curve join
center of all quadrants.
Third approximation:

• In this each of the 16 squares is further subdivided into 2x2 grids ending in 64
squares curve joins center of all quadrants.
Infinite Approximations:

• If we keep subdividing infinitely, the Hilbert curve will fill the entire square, coming
close to every point without crossing itself.
Interpolation and Approximation:
Interpolation and approximation are two techniques used to create smooth curves from a
given set of sample points.

Interpolation

• Interpolation involves constructing a curve that passes exactly through each given
sample point.
• In other words, the interpolated curve will intersect each sample point.
• Common interpolation techniques include linear interpolation, polynomial
interpolation.

Approximation
• In approximation the curve does not require to pass through each sample point.
• Instead, the curve follows the general shape indicated by the sample points.
• The curve’s shape is influenced by sample points (control points) but does not
necessarily pass through them.
• It is used when a smoother or more generalized representation is desired.
• Common approximation techniques include B-splines or Bezier curves.
Bezier Curve

• A Bezier curve is a parametric curve widely used in computer graphics.


• It is defined using a set of control points, where the curve's shape is determined by
these points.
• The curve begins at the first control point and ends at the last control point, with
intermediate control points influencing its shape.
• Bezier curves are particularly known for their smoothness and flexibility in
representing complex shapes.

Properties of Bezier Curve:

• The degree of the Bezier curve is one less than the number of control points
• Moving a control point affects only a part of the curve, making it easy to modify
shapes.
• Always interpolates first and the last control points and approximates remaining.
• They are unaffected by transformations like translation, rotation, and scaling.
• Bezier curve always satisfies convex hull property.
• Bezier curve can fit any number of control points.
Segment:
It is used to represent the basic building blocks of a graphical scene.
Segment is a part of the display file.
Segments allow efficient organization, storage, and manipulation of individual parts of a
graphical scene.
Segment Table:
The structure used to organize all information related to segment is called Segment Table.
It is used to keep records of length of similar segments in its memory.

Segment Name:
• A unique identifier or name assigned to each segment.
Segment Start:
• Indicates the starting address or position of the segment in the display file.
Segment Size:
• Specifies the amount of memory or storage allocated for the segment.
Visibility:
• Determines whether the segment is visible (ON) or hidden (OFF) on the display.
Scale X:
• Represents the horizontal scaling factor applied to the segment.
Scale Y:
• Represents the vertical scaling factor applied to the segment.
Explain creation, closing, deletion and renaming of segment with example.
Segment Creation: Definition: Creating a new segment to store or manage data.
Algorithm:
1.If any segment is open, give error message:
“Segment is still open” and go to step 8.
2. Read the name of the new segment.
3. If the segment name is not valid, give error message:
“Segment name not a valid name” and go to step 8.
4. If given segment name already exists, give error message:
“Segment name already exists in name list” and go to step 8.
5. Make next free storage area in display file as start of new segment.
6. Initialize size of new segment to 0 and all its attributes to their default values.
7. Inform that the new segment is now open.
8. Stop.
Closing a Segment:

• Definition: Marks the segment as complete and prevents from accidental modifications
and saves the segment for reuse.
Algorithm for Segment Closing
Step 1: Start.
Step 2: Check if a Segment is Open
Step 2.1: If no segment is open, display the error message:
"No segment is open now" and exit.
Step 3: Rename the currently open segment to an unnamed segment (e.g., 0).
Step 4: If another unnamed segment already exists, delete it and initialize it with no
instructions.
Step 5: Allocate free storage area in the display file at the start of the unnamed segment.
Step 6: Set the size of the unnamed segment to 0.
step 7: Stop.
• Deleting a Segment: **
Definition: Removes a segment from memory or storage, to free up resources or remove
unnecessary segments.
Algorithm for Deleting a Segment:
1. Read the name of the segment to be deleted.
2. If segment name is not valid, give error message:
“Segment name is not a valid name” and go to step 8.
3. If the segment is open, give error message:
“Can’t delete an open segment” and go to step 8.
4. If size of segment is less than 0, no processing is required and go to step 8.
5. The segments which follow the deleted segment are shifted by its size.
6. Recover deleted space by resetting index of next free instruction.
7. The starting position of shifted segments is adjusted by subtracting the size of deleted
segment from it.
8. Stop.

• Renaming a Segment: **
Renaming helps in maintaining clarity and avoiding naming conflicts.
Algorithm:
1. If both old and new segment names are not valid, give error message:
“Segment names are not valid names” and go to step 6.
2. If any of two segments is open, give error message:
“Segments are still open” and go to step 6.
3. If new segment name given already exists in the display list, give error message:
“Segment name already exists” and go to step 6.
4. The old segment table entry are copied into new position.
5. Delete the old segment.
6. Stop.
Write a short note on motion specification methods based on:
i) Geometric and kinematics information.
ii) Specification methods based on physical information.

Motion specification is the process of defining how objects move in an animation. It


includes methods for setting object positions, paths, timing, and even physical interactions
to create realistic motion.
❖ Geometric and Kinematic Information
Geometric Information:

• Describes the trajectory of motion (e.g., straight line, circle, curve).


• It contains the details of object such as object's size, shape, and position.
Kinematic Information:

• Kinematics describes motion without considering forces.


• Describes motion in terms of speed (velocity), direction, and acceleration over time.
• Describing how fast and in which direction an object is moving.

❖ Specification Methods Based on Physical Information

Physical Information:
• This method uses physics principles, such as mass, force, and gravity, to create realistic
motion.
• Focuses on the forces (e.g., gravity) and physical properties (e.g., mass, friction) that
affect motion.
• Describing motion based on force and mass.
Important Features of NVIDIA Gaming Platform
1. High-Performance GPUs: (GeForce RTX series)
o NVIDIA's GeForce RTX graphics cards are designed for gamers who demand high-
quality visuals.
o Supports real-time ray tracing and AI-powered DLSS (Deep Learning Super
Sampling) for enhanced visual quality.
2. Ray Tracing Technology:
o NVIDIA's RTX GPUs are equipped with real-time ray tracing, a rendering
technique that produces realistic lighting, shadows, and reflections.
o This creates more realistic and engaging visuals in supported games.
3. DLSS (Deep Learning Super Sampling):
o AI-based rendering technology that boosts frame rates while maintaining high-
quality visuals.
o Improves performance without sacrificing image quality.
4. NVIDIA Reflex:
o Reduces system latency for faster response times in competitive gaming.
o Provides a smoother and more precise gaming experience.
5. NVIDIA G-Sync:
o Synchronizes the monitor’s refresh rate with the GPU to eliminate screen tearing
and reduce input lag.
o Ensures a smooth and stutter-free gaming experience.
6. GeForce Experience:
o This software provides features like game optimization, screen recording, and live
streaming and updating drivers.
o Easy-to-use interface for managing games and settings.
7. GeForce NOW (Cloud Gaming):
o Cloud gaming platform that allows playing and streaming high-quality games on
low-end devices via the internet.
o Supports cross-platform gaming.
Memory Block:

• The memory block connects to a 32-bit address bus.


• It is responsible for storing and fetching instructions and data required by the processor.
Cache Instruction:

• It holds frequently used instructions for faster execution.


Cache Data:

• Stores frequently accessed data for quick retrieval.


RISC Integer Block:

• Handles integer operations following the RISC design principle.


• It is used to performs fast, basic operations on integers.
Floating Point Control Block:

• Dedicated to managing floating-point operations, which) involve non-integer


calculations.
Bus Control Block:

• Manages data flow between the processor and external components via the 64-bit data
bus.
• Acts as an intermediary for both data and instructions.
Graphics Block:

• Specialized for graphical computations, such as rendering and manipulation of visual


data.
Adder Block:

• Performs addition operations, including integer and floating-point additions.


Multiplier Block:

• Handles multiplication operations, for both integer and floating-point numbers.


kr/ki Registers:

• Used for complex number calculations which includes real (kr) and imaginary (ki)
components.
T Block:

• It acts as a temporary register or buffer for intermediate results before sending them to
the adder block.

You might also like