As an alternative to grid-based approaches, point-based computing offers access to the full information stored in unstructured point clouds derived from lidar scans of terrain. By employing appropriate hierarchical data structures and algorithms for out-of-core processing and view-dependent rendering, it is feasible to visualize and analyze three-dimensional (3D) lidar point-cloud data sets of arbitrary sizes in real time. Here, we describe LidarViewer, an implementation of point-based computing developed at the University of California (UC), Davis, W.M. Keck Center for Active Visualization in the Earth Sciences (KeckCAVES). Specifically, we show how point-based techniques can be used to simulate hillshading of a continuous terrain surface by computing local, point-centered tangent plane directions in a pre-processing step. Lidar scans can be analyzed interactively by extracting features using a selection brush. We present examples including measurement of bedding and fault surfaces and manual extraction of 3D features such as vegetation. Point-based computing approaches can offer significant advantages over grids, including analysis of arbitrarily large data sets, scale- and direction-independent analysis and feature extraction, point-based feature- and time-series comparison, and opportunities to develop semi-automated point filtering algorithms. Because LidarViewer is open-source, and its key computational framework is exposed via a Python interface, it provides ample opportunities to develop novel point-based computation methods for lidar data.