CompoundRay, an open-source tool for high-speed and high-fidelity rendering of compound eyes

Revealing the functioning of compound eyes is of interest to biologists and engineers alike who wish to understand how visually complex behaviours (e.g. detection, tracking, and navigation) arise in nature, and to abstract concepts to develop novel artificial sensory systems. A key investigative method is to replicate the sensory apparatus using artificial systems, allowing for investigation of the visual information that drives animal behaviour when exposed to environmental cues. To date, ‘compound eye models’ (CEMs) have largely explored features such as field of view and angular resolution, but the role of shape and overall structure have been largely overlooked due to modelling complexity. Modern real-time ray-tracing technologies are enabling the construction of a new generation of computationally fast, high-fidelity CEMs. This work introduces a new open-source CEM software (CompoundRay) that is capable of accurately rendering the visual perspective of bees (6000 individual ommatidia arranged on 2 realistic eye surfaces) at over 3000 frames per second. We show how the speed and accuracy facilitated by this software can be used to investigate pressing research questions (e.g. how low resolution compound eyes can localise small objects) using modern methods (e.g. machine learning-based information exploration).


eLife's transparent reporting form
We encourage authors to provide detailed information within their submission to facilitate the interpretation and replication of experiments. Authors can upload supporting documentation to indicate the use of appropriate reporting guidelines for health-related research (see EQUATOR Network), life science research (see the BioSharing Information Resource), or the ARRIVE guidelines for reporting work involving animal research. Where applicable, authors should refer to any relevant reporting standards documents in this form.
If you have any questions, please consult our Journal Policies and/or contact us: editorial@elifesciences.org.

Sample-size estimation
 You should state whether an appropriate sample size was computed when the study was being designed  You should state the statistical method of sample size computation and any required assumptions  If no explicit power analysis was used, you should describe how you decided what sample (replicate) size (number) to use Please outline where this information can be found within the submission (e.g., sections or figure legends), or explain why this information doesn't apply to your submission: Replicates  You should report how often each experiment was performed  You should include a definition of biological versus technical replication  The data obtained should be provided and sufficient information should be provided to indicate the number of independent biological and/or technical replicates  If you encountered any outliers, you should describe how these were handled  Criteria for exclusion/inclusion of data should be clearly stated  High-throughput sequence data should be uploaded before submission, with a private link for reviewers provided (these are available from both GEO and ArrayExpress) Please outline where this information can be found within the submission (e.g., sections or figure legends), or explain why this information doesn't apply to your submission: This information does not apply to the submission as no population was studied.
The results section of the paper documents all results obtained relating to the application of CompoundRay, and steps taken to normalise results where necessary (Results section 3, "Criterion 3: Speed") is discussed beforehand (Results section 3, first sub-section, "Minimum Sample Count" Statistical reporting  Statistical analysis methods should be described and justified  Raw data should be presented in figures whenever informative to do so (typically when N per group is less than 10)  For each experiment, you should identify the statistical tests used, exact values of N, definitions of center, methods of multiple test correction, and dispersion and precision measures (e.g., mean, median, SD, SEM, confidence intervals; and, for the major substantive results, a measure of effect size (e.g., Pearson's r, Cohen's d)  Report exact p-values wherever possible alongside the summary statistics and 95% confidence intervals. These should be reported for all key questions and not only when the p-value is less than 0.05.
Please outline where this information can be found within the submission (e.g., sections or figure legends), or explain why this information doesn't apply to your submission: (For large datasets, or papers with a very large number of statistical tests, you may upload a single table file with tests, Ns, etc., with reference to sections in the manuscript.) Group allocation  Indicate how samples were allocated into experimental groups (in the case of clinical studies, please specify allocation to treatment method); if randomization was used, please also state if restricted randomization was applied  Indicate if masking was used during group allocation, data collection and/or data analysis Please outline where this information can be found within the submission (e.g., sections or figure legends), or explain why this information doesn't apply to your submission: Additional data files ("source data")  We encourage you to upload relevant additional data files, such as numerical data that are represented as a graph in a figure, or as a summary table  Where provided, these should be in the most useful format, and they can be uploaded as "Source data" files linked to a main figure or table  Include model definition files including the full list of parameters used  Include code used for data analysis (e.g., R, MatLab)  Avoid stating that data files are "available upon request" Please indicate the figures or tables for which source data files have been provided: The paper exhibits only minor use of statistical methods, in the results sub-sub-section "Minimum Sample Count", in which the target standard deviations (1%) and method of calculating them (including sample size, denoted as 1000 frames and range in Figure  7's caption) are described.
This does not apply to the submission as all experimental data was generated with known statistical characteristics, with experimentation used only to demonstrate these differing characteristics.
eLife Sciences Publications, Ltd is a limited liability non-profit non-stock corporation incorporated in the State of Delaware, USA, with company number 5030732, and is registered in the UK with company number FC030576 and branch number BR015634 at the address 1st Floor, 24 Hills Road, Cambridge CB2 1JP | August 2014 3 All source data (including generation code, retrieved values and experimental configurations) for the work found in this submission is available online at the CompoundRay GitHub repository (https://github.com/ManganLab/eye-renderer, with figure-generating code and data found within the 'python-examples' folder) with the exception of the 3D natural environment model. In its place is a simple stand-in that serves the same purpose as that of the model used in the paper (namely to act as a more visually-intuitive environment than that of the lab model).