CS410 Software Engineering

Real Projects. Real Impact. Real   kills.

    Software Development Life Cycle
    Prototyping + Scrum + Agile + DevOps
    Python and C++ (w/ Cython)
    Git + Docker Containers
    Applied Deep Learning
    Guest Speakers

Dan Ginsburg

11 / 20

Vulkan, OpenGL, and OpenGL ES renderers for the Source 2 engine used by games such as Dota 2, Artifact, and Dota Underlords

Critical Thinking in Cybersecurity

11 / 20

Kristin Dahl

11 am

Kristin is a cyber security consultant with IBM X-Force IRIS and former research staff member at MIT Lincoln Laboratory

Assignment 7

Due 11/11

Quiz Today!!

Assignment 8

coming very soon!!

Due 11/15

Normals

V4

V6

V5

(x, y, z)

(x, y, z)

(x, y, z)

Face

N4 (x, y, z)

V1

V3

(x, y, z)

(x, y, z)

(x, y, z)

Vertex

/ Vertices

Face

N1 (x, y, z)

N2 (x, y, z)

N3 (x, y, z)

Vertex Normals

Face Normals

used for Material

used for Lighting

used for Shading

V1

V2

V3

Bump Map

Normals

Pixel

Mesh File Formats

GLTF

.gltf

.glb

STL

OBJ

PLY

Collada

.dae

.stl

.ply

.obj

And more:

Let's make an OBJ file

v 0 0 0
v 0 10 0
v 10 0 0
v 0 0 10
f 1 2 3
f 1 2 4
f 1 4 3
f 2 4 3
var loader = new THREE.PLYLoader();
loader.load('beethoven.ply', function (geometry) {
  
  geometry.computeVertexNormals();
  
  var material = new THREE.MeshStandardMaterial( {
    color: 'red'
  } );
  
  scene.add( new THREE.Mesh( geometry, material ) );

} );
var loader = new THREE.PLYLoader();
loader.load('beethoven.ply', function (geometry) {
  
  geometry.computeVertexNormals();
  
  var material = new THREE.MeshStandardMaterial( {
    color: 'red'
  } );
  
  scene.add( new THREE.Mesh( geometry, material ) );

} );

Constructive Solid Geometry

Materials

Mesh

Geometry

+ Material

Light Simulations

N (x, y, z)

Material

Scattering

controls the physical appearance

magic mode uses (x, y, z) as color

Physically Based Rendering

Shiny with highlights

Non-Shiny without highlights

roughness 0 .. 1

metalness 0 .. 1

THREE.MeshStandardMaterial

roughness 0 .. 1

metalness 0 .. 1

THREE.MeshStandardMaterial