[escher] Typo fixes.

TEST: No behavior change
Change-Id: I945f3b3fd224e7d24872e0e022ab5da81b253a79
diff --git a/public/lib/escher/base/ownable.h b/public/lib/escher/base/ownable.h
index e858327..d6770b0 100644
--- a/public/lib/escher/base/ownable.h
+++ b/public/lib/escher/base/ownable.h
@@ -40,7 +40,7 @@
 
   // If |owner| is null, returns true so that the Ownable is immediately
   // destroyed.  Otherwise, returns false; destruction of the Ownable is now
-  // the responsiblity of the |owner_|, which is notified via ReceiveOwnable().
+  // the responsibility of the |owner_|, which is notified via ReceiveOwnable().
   bool OnZeroRefCount() final override {
     if (owner_) {
       // FXL_DCHECK(this->IsKindOf<OwnableT>());
diff --git a/public/lib/escher/escher.h b/public/lib/escher/escher.h
index 1bfe1ee..a34974e 100644
--- a/public/lib/escher/escher.h
+++ b/public/lib/escher/escher.h
@@ -103,7 +103,7 @@
       const impl::DescriptorSetLayout& layout);
 
   // Do periodic housekeeping.  This is called by Renderer::EndFrame(), so you
-  // don't need to call it if your application is constantly renderering.
+  // don't need to call it if your application is constantly rendering.
   // However, if your app enters a "quiet period" then you might want to
   // arrange to call Cleanup() after the last frame has finished rendering.
   // Return true if cleanup was complete, and false if more cleanup remains
diff --git a/public/lib/escher/geometry/bounding_box.h b/public/lib/escher/geometry/bounding_box.h
index 073faae..ad5053f 100644
--- a/public/lib/escher/geometry/bounding_box.h
+++ b/public/lib/escher/geometry/bounding_box.h
@@ -51,12 +51,12 @@
 
   bool is_empty() const { return *this == BoundingBox(); }
 
-  // Return the number of bounding box corners that are clipped by the the
+  // Return the number of bounding box corners that are clipped by the
   // specified plane (between 0 and 8).  Since this is a 2D plane, the z
   // coordinate is ignored, and only 4 corners need to be tested.
   uint32_t NumClippedCorners(const plane2& plane) const;
 
-  // Return the number of bounding box corners that are clipped by the the
+  // Return the number of bounding box corners that are clipped by the
   // specified plane (between 0 and 8).
   uint32_t NumClippedCorners(const plane3& plane) const;
 
diff --git a/public/lib/escher/geometry/indexed_triangle_mesh_clip.h b/public/lib/escher/geometry/indexed_triangle_mesh_clip.h
index 68ec5f8..af0c0a8 100644
--- a/public/lib/escher/geometry/indexed_triangle_mesh_clip.h
+++ b/public/lib/escher/geometry/indexed_triangle_mesh_clip.h
@@ -79,7 +79,7 @@
       &target->attributes3, &source->attributes3, index1, index2, interp_param);
 }
 
-// Helper functions that copy an a attribute from a source mesh, pushing it to
+// Helper functions that copy an attribute from a source mesh, pushing it to
 // the back of a target mesh.
 template <typename AttrT>
 void IndexedTriangleMeshPushCopiedAttribute(std::vector<AttrT>* target,
diff --git a/public/lib/escher/hmd/pose_buffer_latching_shader.h b/public/lib/escher/hmd/pose_buffer_latching_shader.h
index f36133b..c6c66ad 100644
--- a/public/lib/escher/hmd/pose_buffer_latching_shader.h
+++ b/public/lib/escher/hmd/pose_buffer_latching_shader.h
@@ -28,7 +28,7 @@
   //   mat4  vp_matrix;
   // }
   //
-  // Note that this is a convienence entry point which simply calls through
+  // Note that this is a convenience entry point which simply calls through
   // to LatchStereoPose.
   //
   // For details on pose buffers and the layout of the Pose struct see
diff --git a/public/lib/escher/impl/gpu_uploader.h b/public/lib/escher/impl/gpu_uploader.h
index 194d04f..d1af540 100644
--- a/public/lib/escher/impl/gpu_uploader.h
+++ b/public/lib/escher/impl/gpu_uploader.h
@@ -82,7 +82,7 @@
 
   vk::Device device_;
 
-  // Use the queue transfer-specfic queue if available, otherwise the default
+  // Use the queue transfer-specific queue if available, otherwise the default
   // queue.
   vk::Queue queue_;
 
diff --git a/public/lib/escher/impl/ssdo_accelerator.h b/public/lib/escher/impl/ssdo_accelerator.h
index 3bcc2e1..5498403 100644
--- a/public/lib/escher/impl/ssdo_accelerator.h
+++ b/public/lib/escher/impl/ssdo_accelerator.h
@@ -39,7 +39,7 @@
 
   // Unpack the image generated by GenerateLookupTable(), or another image with
   // the same packed format, into an image 4x larger in each dimension, suitable
-  // for debug visualization.  For each ouput pixel, the corresponding pair of
+  // for debug visualization.  For each output pixel, the corresponding pair of
   // packed bits determine the red and green values.  For example, if the less-
   // significant of the packed bits is 1, then the red channel is set to 1.0,
   // otherwise 0.0.
diff --git a/public/lib/escher/paper/paper_draw_call_factory.cc b/public/lib/escher/paper/paper_draw_call_factory.cc
index dd58ea8..66c756d 100644
--- a/public/lib/escher/paper/paper_draw_call_factory.cc
+++ b/public/lib/escher/paper/paper_draw_call_factory.cc
@@ -202,7 +202,7 @@
   // The camera points down the negative-Z axis, so its world-space direction
   // can be obtained by applying the camera transform to the direction vector
   // [0, 0, -1, 0] (remembering that directions vectors have a w-coord of 0, vs.
-  // 1 for postion vectors).  This is equivalent to taking the negated third
+  // 1 for position vectors).  This is equivalent to taking the negated third
   // column of the transform.
   camera_dir_ = -vec3(glm::column(camera.transform(), 2));
 
diff --git a/public/lib/escher/paper/paper_drawable.h b/public/lib/escher/paper/paper_drawable.h
index 3541ea1..71195f8 100644
--- a/public/lib/escher/paper/paper_drawable.h
+++ b/public/lib/escher/paper/paper_drawable.h
@@ -14,7 +14,7 @@
 // |PaperDrawable| is an abstract drawable object which can be rendered by
 // |PaperRenderer2|, or anything that passes the right args to |DrawInScene()|.
 //
-// There are three levels of sophstication for users of |PaperDrawable|:
+// There are three levels of sophistication for users of |PaperDrawable|:
 // 1) Use pre-existing subclasses of |PaperDrawable|.
 // 2) Implement new subclass of |PaperDrawable| using the existing functionality
 //    provided by arguments to |DrawInScene()|.
diff --git a/public/lib/escher/paper/paper_readme.h b/public/lib/escher/paper/paper_readme.h
index a59b2f4..64ba6e8 100644
--- a/public/lib/escher/paper/paper_readme.h
+++ b/public/lib/escher/paper/paper_readme.h
@@ -27,7 +27,7 @@
 // that is invoked by PaperRenderer2::Draw().  Clients may use pre-existing
 // implementations of PaperDrawable, or roll their own.
 //
-// Currently, PaperLegacyDrawable is the the only standard implementation of
+// Currently, PaperLegacyDrawable is the only standard implementation of
 // PaperDrawable.  It allows PaperRenderer2 to draw "legacy" escher::Objects.
 class PaperDrawable;
 class PaperLegacyDrawable;
diff --git a/public/lib/escher/paper/paper_renderer2.cc b/public/lib/escher/paper/paper_renderer2.cc
index 2414e5b..4fbafcf 100644
--- a/public/lib/escher/paper/paper_renderer2.cc
+++ b/public/lib/escher/paper/paper_renderer2.cc
@@ -305,7 +305,7 @@
     if (msaa_texture) {
       FXL_DCHECK(rp->num_color_attachments == 1 && rp->clear_attachments == 1u);
       // Move the output image to attachment #1, so that attachment #0 is always
-      // the attachment that we render indo.
+      // the attachment that we render into.
       rp->color_attachments[kResolveTargetAttachmentIndex] =
           std::move(rp->color_attachments[kRenderTargetAttachmentIndex]);
       rp->color_attachments[kRenderTargetAttachmentIndex] = msaa_texture;
diff --git a/public/lib/escher/paper/paper_shape_cache.cc b/public/lib/escher/paper/paper_shape_cache.cc
index c7b6ba0..9c51daf 100644
--- a/public/lib/escher/paper/paper_shape_cache.cc
+++ b/public/lib/escher/paper/paper_shape_cache.cc
@@ -94,7 +94,7 @@
             auto it = silhouette_edges.find(opposite);
             if (it != silhouette_edges.end()) {
               // The opposite edge was already seen in the mesh, so neither this
-              // edge nor the opposite can be a silhoutte edge.
+              // edge nor the opposite can be a silhouette edge.
               silhouette_edges.erase(it);
             } else {
               // No opposite edge was found, so this edge is a candidate to be a
diff --git a/public/lib/escher/third_party/granite/vk/command_buffer.h b/public/lib/escher/third_party/granite/vk/command_buffer.h
index b8abfcc..07dfb04 100644
--- a/public/lib/escher/third_party/granite/vk/command_buffer.h
+++ b/public/lib/escher/third_party/granite/vk/command_buffer.h
@@ -145,7 +145,7 @@
       vk::DeviceSize stride,
       vk::VertexInputRate step_rate = vk::VertexInputRate::eVertex);
   // These two variants keep |buffer| alive while the command buffer is pending;
-  // the one above makes this the responsiblity of the caller.
+  // the one above makes this the responsibility of the caller.
   void BindVertices(
       uint32_t binding, Buffer* buffer, vk::DeviceSize offset,
       vk::DeviceSize stride,
@@ -430,7 +430,7 @@
                         const impl::DescriptorSetLayout& set_layout);
 
   // Called when there is the possibility that a pipeline change may be
-  // required.  A hash is generated from the currenty-enabled vertex attributes
+  // required.  A hash is generated from the currently-enabled vertex attributes
   // (i.e. those that are used by the current pipeline layout), as well as the
   // current subpass index, and other "static" state.  This hash is used to
   // look up a cached pipeline.  If no pipeline is available, then a new one is
diff --git a/public/lib/escher/third_party/granite/vk/render_pass_info.cc b/public/lib/escher/third_party/granite/vk/render_pass_info.cc
index b19c2b5..23bb966 100644
--- a/public/lib/escher/third_party/granite/vk/render_pass_info.cc
+++ b/public/lib/escher/third_party/granite/vk/render_pass_info.cc
@@ -46,7 +46,7 @@
     // render a new one every frame.
     // NOTE: we might want to relax this someday, e.g. to support temporal AA.
     // If so, RenderPass::FillColorAttachmentDescription() would need to be
-    // adjusted to choose an appropriate intial layout for the attachment.
+    // adjusted to choose an appropriate initial layout for the attachment.
     FXL_DCHECK(!color_attachments[index]->image()->is_swapchain_image());
 
     load_op = vk::AttachmentLoadOp::eLoad;
@@ -158,7 +158,7 @@
           << "RenderPass depth-stencil attachment load/clear conflict.";
     }
 
-    // Cannot load or store transient image attachements.
+    // Cannot load or store transient image attachments.
     if (depth_stencil_attachment->image()->is_transient()) {
       if (op_flags & kLoadDepthStencilOp) {
         success = false;
diff --git a/public/lib/escher/util/bitmap.h b/public/lib/escher/util/bitmap.h
index 441cf89..1771211 100644
--- a/public/lib/escher/util/bitmap.h
+++ b/public/lib/escher/util/bitmap.h
@@ -73,7 +73,7 @@
   uint32_t bits_size_ = 0;
 };
 
-// An implmentation of Bitmap that manages its own storage.
+// An implementation of Bitmap that manages its own storage.
 class BitmapWithStorage : public Bitmap {
  public:
   BitmapWithStorage() : Bitmap(nullptr, 0) {}
diff --git a/public/lib/escher/util/depth_to_color.h b/public/lib/escher/util/depth_to_color.h
index 68beb37..f7e8a02 100644
--- a/public/lib/escher/util/depth_to_color.h
+++ b/public/lib/escher/util/depth_to_color.h
@@ -12,7 +12,7 @@
 
 // Utility that uses a compute shader to transform a depth image to a color
 // image.  One common use-case is for debugging, since Vulkan does not support
-// directly bliting a depth image into a color image.
+// directly blitting a depth image into a color image.
 class DepthToColor {
  public:
   DepthToColor(EscherWeakPtr escher, ImageFactory* image_factory);
diff --git a/public/lib/escher/util/enum_flags.h b/public/lib/escher/util/enum_flags.h
index a5d7234..242295b 100644
--- a/public/lib/escher/util/enum_flags.h
+++ b/public/lib/escher/util/enum_flags.h
@@ -99,7 +99,7 @@
 }
 
 // Reduce boilerplate by bundling two things that clients always want anyway:
-// - a more convenient name: e.g. MyFlags insead of EnumFlags<MyFlagBits>
+// - a more convenient name: e.g. MyFlags instead of EnumFlags<MyFlagBits>
 // - two inline functions for implicitly going from "Bits" to "Flags".
 #define ESCHER_DECLARE_ENUM_FLAGS(FLAGS_NAME, BITS_NAME)        \
   using FLAGS_NAME = EnumFlags<BITS_NAME>;                      \
diff --git a/public/lib/escher/util/image_utils.h b/public/lib/escher/util/image_utils.h
index 874539b..15a2eba 100644
--- a/public/lib/escher/util/image_utils.h
+++ b/public/lib/escher/util/image_utils.h
@@ -49,7 +49,7 @@
 vk::ImageAspectFlags FormatToColorOrDepthStencilAspectFlags(vk::Format format);
 
 // Helper function that creates a VkImage given the parameters in ImageInfo.
-// This does not bind the the VkImage to memory; the caller must do that
+// This does not bind the VkImage to memory; the caller must do that
 // separately after calling this function.
 vk::Image CreateVkImage(const vk::Device& device, ImageInfo info);
 
@@ -84,7 +84,7 @@
 // If the format of |pixels| is different from |gpu_image|, a conversion
 // function that can convert from |pixels| to |gpu_image| should be
 // provided as |convertion_func|.
-// Note that all echer images are stored in GPU memory.  The use of gpu_image
+// Note that all escher images are stored in GPU memory.  The use of gpu_image
 // here is to specifically differentiate it from pixels, which may be stored in
 // host_memory.
 void WritePixelsToImage(impl::GpuUploader* gpu_uploader, uint8_t* pixels,