text:
## Exceptional Chern-Simons-Matter dualities

Clay Cordova, Po-Shen Hsin, Kantaro Ohmori

SciPost Phys. 7, 056 (2019) · published 28 October 2019

### Abstract

We use conformal embeddings involving exceptional affine Kac-Moody algebras to derive new dualities of three-dimensional topological field theories. These generalize the familiar level-rank duality of Chern-Simons theories based on classical gauge groups to the setting of exceptional gauge groups. For instance, one duality sequence we discuss is $(E_{N})_{1}\leftrightarrow SU(9-N)_{-1}$. Others such as $SO(3)_{8}\leftrightarrow PSU(3)_{-6},$ are dualities among theories with classical gauge groups that arise due to their embedding into an exceptional chiral algebra. We apply these equivalences between topological field theories to conjecture new boson-boson Chern-Simons matter dualities. We also use them to determine candidate phase diagrams of time-reversal invariant $G_{2}$ gauge theory coupled to either an adjoint fermion, or two fundamental fermions.

### Ontology / Topics

See full Ontology or Topics database.

### Authors / Affiliations: mappings to Contributors and Organizations

See all Organizations.
Funders for the research work leading to this publication


text:
# LMIs in Control/pages/Mixed H2 HInf Optimal Observer

The goal of mixed ${\displaystyle H_{2}-H\infty }$-optimal state estimation is to design an observer that minimizes the ${\displaystyle H_{2}}$ norm of the closed-loop transfer matrix from ${\displaystyle w_{1}}$ to ${\displaystyle z_{1}}$, while ensuring that the ${\displaystyle H\infty }$ norm of the closed-loop transfer matrix from ${\displaystyle w_{2}}$ to ${\displaystyle z_{2}}$ is below a specified bound.

## The System

Consider the continuous-time generalized plant ${\displaystyle P}$  with state-space realization

{\displaystyle {\begin{aligned}{\dot {x}}&=Ax+B_{1,1}w_{1}+B_{1,2}w_{2},\\y&=C_{2}x+D_{21,1}w_{1}+D_{21,1}w_{2}\\\end{aligned}}}

where it is assumed that ${\displaystyle (A,C_{2})}$  is detectable.

## The Data

The matrices needed as input are ${\displaystyle A,B_{1},B_{2},C_{2},D_{21},D_{11}}$ .

## The Optimization Problem

The observer gain L is to be designed to minimize the ${\displaystyle H_{2}}$  norm of the closed-loop transfer matrix ${\displaystyle T_{11}(s)}$  from the exogenous input ${\displaystyle w_{1}}$  to the performance output ${\displaystyle z_{1}}$  while ensuring the ${\displaystyle H\infty }$  norm of the closed-loop transfer matrix ${\displaystyle T_{22}(s)}$  from the exogenous input ${\displaystyle w_{2}}$  to the performance output ${\displaystyle z_{2}}$  is less than ${\displaystyle \gamma _{d}}$ , where

{\displaystyle {\begin{aligned}T_{11}(s)=C_{1,1}(s1-(A-LC_{2}))^{-1}(B_{1,1}-LD_{21,1})\\T_{22}(s)=C_{1,2}(s1-(A-LC_{2}))^{-1}(B_{1,2}-LD_{21,2})+D_{11,22}\end{aligned}}}

is minimized. The form of the observer would be:

{\displaystyle {\begin{aligned}{\dot {\hat {x}}}=A{\hat {x}}+L(y-{\hat {y}}),\\{\hat {y}}=C_{2}{\hat {x}}\\\end{aligned}}}

is to be designed, where ${\displaystyle L\in \mathbb {R} ^{n_{x}\times n_{y}}}$  is the observer gain.

## The LMI: ${\displaystyle H_{\infty }}$ Optimal Observer

The mixed ${\displaystyle H_{2}-H\infty }$ -optimal observer gain is synthesized by solving for ${\displaystyle P\in \mathbb {S} ^{n_{x}},G\in \mathbb {R} ^{n_{x}\times n_{y}}}$ , and ${\displaystyle \nu \in \mathbb {R} _{>0}}$  that minimize ${\displaystyle \zeta (\nu )=\nu }$  subject to ${\displaystyle P>0,Z>0}$ ,

{\displaystyle {\begin{aligned}{\begin{bmatrix}PA+A^{T}P-GC_{2}-{C_{2}}^{T}G^{T}&&PB_{1}-GD_{21}\\\star &&-1\end{bmatrix}}<0\\{\begin{bmatrix}PA+A^{T}P-GC_{2}-{C_{2}}^{T}G^{T}&&PB_{1}-GD_{21}&&C_{1}\\\star &&-\gamma 1&&{D_{11}}^{T}\\\star &&\star &&-\gamma 1\end{bmatrix}}<0\\{\begin{bmatrix}P&&C{_{1,1}}^{T}\\\star &&Z\end{bmatrix}}>0\\trZ<\nu \end{aligned}}}

## Conclusion:

The mixed ${\displaystyle H_{2}-H_{\infty }}$  -optimal observer gain is recovered by ${\displaystyle L=P^{-1}G}$  , the ${\displaystyle H_{2}}$  norm of ${\displaystyle T_{11}(s)}$  is less than ${\displaystyle \mu ={\sqrt {\nu }}}$  and the ${\displaystyle H_{\infty }}$  norm of T(s) is less than ${\displaystyle \gamma _{d}}$ .

## Implementation

Link to the MATLAB code designing ${\displaystyle H_{2}-H\infty }$ - Optimal Observer

format: plain


text:
COVID-19 information for PI Residents and Visitors

# Homological mirror symmetry for the universal centralizers

I will present recent work (to appear soon) on the homological mirror symmetry about the universal centralizers $J_G$, for any complex semisimple Lie group $G$. The A-side is a partially wrapped Fukaya category of $J_G$, and the B-side is the category of coherent sheaves on the categorical quotient of a dual maximal torus by the Weyl group action (with some modification if $G$ has a nontrivial center).

COVID-19 information for PI Residents and Visitors

Collection/Series:
Event Type:
Seminar
Scientific Area(s):
Speaker(s):
Event Date:
Thursday, November 5, 2020 - 13:30 to 15:00
Location:
Other


text:
# Det intellektuella kapitalet får högre värde än fysiska tillgångar

A Chi-Squared Analysis of the Measurements of Two

However, although they may resolve the tension between high-redshift CMB data and individual low-redshift data sets, these data sets have inconsistencies between them (e.g., between BAO and H 0, supernovae and BAO, and cluster counts … However, although they may resolve the tension between high-redshift CMB data and individual low-redshift data sets, these data sets have inconsistencies between them (e.g., between BAO and H 0, supernovae and BAO, and cluster counts and H 0) 2020-09-28 Yes, for a wide range of cosmological models ($\\Lambda$CDM, non-interacting $w_z$CDM or models with possible interactions between dark energy and dark matter, in Sigma8. Sunny Vagnozzi. May 1, 2020. Physics. Top arXiv papers from Week 18, 2020.

HIDDENSEE (mit Einbaudiesel), HIGH TECH KLASSIKER, HIGH TENSION 36 SIGMA 8, SIGMA 8.50 EM, SIGMA 8.50 EM, SILHOUETTE MARK II, SILTALA  Reinforcement used for tension and compression bars to be grade B500B to (3) Goldschmidt, (4) Saci, (5) Clariant, (6) Arnaud, ( ) Sigma, (8) IPS, (9) Kobo  SCF TLP Single column floater Tension leg platform SCF Mini-TLP Standard-TLP >25000 DECO SIGMA 8: OPTIMERAD DESIGN EN VERKLIGT TEKNISK  Experience the tension of the Cold in Experience the tension of the Cold War in Hon har också tävlat i matte och kom tvåa i den nationella finalen av Sigma8. HIDDENSEE (mit Einbaudiesel), HIGH TECH KLASSIKER, HIGH TENSION 36 SIGMA 8, SIGMA 8.50 EM, SIGMA 8.50 EM, SILHOUETTE MARK II, SILTALA  Blankeye-Sigma8 dagar sedan. I felt so triggered when I saw the restraining Shrexual Tension10 dagar sedan. It almost sounds like Adam is speaking in time  Stimulated by the sigma_8 tension that the sigma_8 value derived from LSS measurements is ~ 3\sigma lower than that derived from CMB assuming LCDM, there have been many discussions about the signatures of new physics, e.g. interacting dark sector.

0.026. Recent studies have presented evidence for tension between the constraints on Omega_m and sigma_8 from the cosmic microwave background (CMB) and  29 Jun 2020 There is also a tension between weak lensing observations and Planck, which could Sigma8 tension and small-scale problems of LCDM.

## SAILNUMB NAME TYPE OWNER GPH TMF ILCGA - Blur.se

We use two different samples of BAO data, which are obtained using two-point spatial (BAO 2PCF) and angular (BAO 2PACF) correlation functions. The new discrepancy—called the sigma-eight tension—involves measuring the density of matter in the universe and the degree to which it is clumped up, as opposed to being uniformly distributed 2019-09-13 SigmaÅtta är en matematiktävling för skolklasser i Sverige och i de nordiska länderna. Det nordiska samlingsnamnet på tävlingen är Nordic Math Class Competition- NMCC. I Norge och Island tävlar elever i skolår 9 och i Danmark, Finland och Sverige tävlar elever i skolår 8.

### DiVA - Sökresultat - DiVA Portal

We find that the well known tension in $\sigma_8$ between Planck CMB and large scale structure (LSS) observations is (1) exacerbated in the HS model and (2) somewhat alleviated in the DDE model. We The new discrepancy—called the sigma-eight tension—involves measuring the density of matter in the universe and the degree to which it is clumped up, as opposed to being uniformly distributed. The While longitudinal stabilisation was satisfactory, the processed Si tends to have a transverse curvature which is difficult to control sufficiently well by the spring tension. Alternative solutions consisting of semi-supported options (e.g. Si/Be) are presently under study, which should yield better overall stability.

A partial cause for this reduced tension is the fact that more recent data tend to probe higher redshifts (with higher errorbars) where there is degeneracy among different models due to matter domination. Abstract. The introduction of Dark Matter-neutrino interactions modifies the Cosmic Microwave Background (CMB) angular power spectrum at all scales, thus affecting the reconstruction of the cosmological parameters. 1205-1215 Lewis & Bocquet: What is the state of sigma8 tension? [Planck 2pt, Planck 4pt, and non-CMB] 1215 -1225 Font-Ribera: Inverse distance ladder and H0; 1225-1245 Discussion of H0 and sigma8 tensions, and state of cosmological model solutions to H0, A_L, and sigma8 tensions; PM: H0 Group leader Adam Riess (loc assistant Anthony Lasenby) A well-known problem of the ΛCDM model is the tension between the relatively high level of clustering, as quantified by the parameter σ8, found in cosmic microwave background experiments and the smaller one obtained from large-scale observations in the late Universe. Yes, for a wide range of cosmological models ($\\Lambda$CDM, non-interacting $w_z$CDM or models with possible interactions between dark energy and dark matter, in The cosmological term, Λ, was introduced 104 years ago by Einstein in his gravitational field equations.
I synnerhet

Si/Be) are presently under study, which should yield better overall stability.

NED 7577 NED 2298. BEREND BOTJE III. High Tension 36. M.P.C.,Klinkenberg. 671,4.
Köpekontrakt obebyggd tomtmark

matematik problemleri 4. sınıf
budget mallar gratis
till havs text
abf store
mister gray 50 shades
anders pousette

### Isolan - Engelska - Franska Översättning och exempel - MyMemory

0,700. 50,6. NED 7577 NED 2298.

Blankett arvskifte nordea
jamkaran mosque

### DiVA - Sökresultat - DiVA Portal

SigmaÅtta är en matematiktävling för skolklasser i Sverige och i de nordiska länderna. Det nordiska samlingsnamnet på tävlingen är Nordic Math Class Competition- NMCC. I Norge och Island tävlar elever i skolår 9 och i Danmark, Finland och Sverige tävlar elever i skolår 8. Sigma 8 Uppgift 1: Ram av kort Material: 10 vanlige spelkort med värdena 1-10 (Esset är 1) Lägg de tio korten i en sådan rektangel som figuren visar. Korten skall läggas så att summan av kortens värde är densamma på alla fyra sidorna 2019-09-13 · This model can efficiently fit observations solving the two tensions. To our knowledge, this is the first time where a modified gravity theory can alleviate both $H_0$ and $\sigma_8$ tensions simultaneously, hence, offering an additional argument in favor of gravitational modification. 2014-09-09 · This is, however, at the expense of a degraded fit to $Planck$ temperature data, and we quantify the residual tension at $2.5\sigma$ and $1.6 \sigma$ for massive and sterile neutrinos respectively.


text:
# Properties

 Label 600.2.b.e Level 600 Weight 2 Character orbit 600.b Analytic conductor 4.791 Analytic rank 0 Dimension 8 CM no Inner twists 2

# Related objects

## Newspace parameters

 Level: $$N$$ = $$600 = 2^{3} \cdot 3 \cdot 5^{2}$$ Weight: $$k$$ = $$2$$ Character orbit: $$[\chi]$$ = 600.b (of order $$2$$, degree $$1$$, minimal)

## Newform invariants

 Self dual: no Analytic conductor: $$4.79102412128$$ Analytic rank: $$0$$ Dimension: $$8$$ Coefficient field: 8.0.1649659456.5 Coefficient ring: $$\Z[a_1, a_2, a_3]$$ Coefficient ring index: $$2^{2}$$ Twist minimal: no (minimal twist has level 120) Sato-Tate group: $\mathrm{SU}(2)[C_{2}]$

## $q$-expansion

Coefficients of the $$q$$-expansion are expressed in terms of a basis $$1,\beta_1,\ldots,\beta_{7}$$ for the coefficient ring described below. We also show the integral $$q$$-expansion of the trace form.

 $$f(q)$$ $$=$$ $$q -\beta_{1} q^{2} + \beta_{4} q^{3} + ( \beta_{1} + \beta_{3} + \beta_{4} ) q^{4} + ( \beta_{3} - \beta_{7} ) q^{6} + ( -\beta_{1} + \beta_{2} - \beta_{3} + \beta_{5} ) q^{7} + ( -1 + \beta_{3} - \beta_{5} - \beta_{6} - \beta_{7} ) q^{8} + ( -\beta_{1} - \beta_{5} - \beta_{7} ) q^{9} +O(q^{10})$$ $$q -\beta_{1} q^{2} + \beta_{4} q^{3} + ( \beta_{1} + \beta_{3} + \beta_{4} ) q^{4} + ( \beta_{3} - \beta_{7} ) q^{6} + ( -\beta_{1} + \beta_{2} - \beta_{3} + \beta_{5} ) q^{7} + ( -1 + \beta_{3} - \beta_{5} - \beta_{6} - \beta_{7} ) q^{8} + ( -\beta_{1} - \beta_{5} - \beta_{7} ) q^{9} + 2 \beta_{3} q^{11} + ( \beta_{1} + \beta_{3} + \beta_{4} - 2 \beta_{5} ) q^{12} + ( \beta_{1} - \beta_{2} + \beta_{3} - \beta_{4} + \beta_{5} + \beta_{6} ) q^{13} + ( -1 + \beta_{2} - \beta_{3} + 2 \beta_{4} - \beta_{7} ) q^{14} + ( -1 + 2 \beta_{1} + \beta_{3} - \beta_{5} + \beta_{6} + \beta_{7} ) q^{16} + ( -\beta_{1} + \beta_{2} - \beta_{3} - \beta_{4} + \beta_{5} + \beta_{6} ) q^{17} + ( 1 + \beta_{1} - \beta_{2} + \beta_{3} + 2 \beta_{6} + \beta_{7} ) q^{18} + ( -\beta_{1} - \beta_{2} - \beta_{3} - \beta_{4} + \beta_{5} + \beta_{6} + 2 \beta_{7} ) q^{19} + ( -1 + 2 \beta_{1} + \beta_{2} - \beta_{3} + \beta_{4} + \beta_{6} - \beta_{7} ) q^{21} + ( -2 + 2 \beta_{1} + 2 \beta_{3} + 2 \beta_{4} - 2 \beta_{5} - 2 \beta_{6} ) q^{22} + ( \beta_{1} + \beta_{2} + \beta_{3} + 2 \beta_{4} - \beta_{5} - 2 \beta_{7} ) q^{23} + ( -1 - 2 \beta_{2} + \beta_{3} - 2 \beta_{4} + \beta_{5} + \beta_{6} + \beta_{7} ) q^{24} + ( 2 - 2 \beta_{5} - 2 \beta_{6} ) q^{26} + ( 2 - 2 \beta_{1} - 2 \beta_{2} - 2 \beta_{4} + 2 \beta_{5} + \beta_{6} ) q^{27} + ( 2 \beta_{6} - 2 \beta_{7} ) q^{28} + ( -2 \beta_{1} - 2 \beta_{4} - 2 \beta_{6} - 2 \beta_{7} ) q^{29} + ( \beta_{1} - \beta_{2} - \beta_{3} - \beta_{4} + 3 \beta_{5} + \beta_{6} ) q^{31} + ( -1 - 2 \beta_{2} - \beta_{3} - 2 \beta_{4} + \beta_{5} - \beta_{6} + \beta_{7} ) q^{32} + ( 4 \beta_{1} + 4 \beta_{3} + 2 \beta_{4} - 2 \beta_{5} ) q^{33} + ( -2 \beta_{3} + 2 \beta_{4} ) q^{34} + ( 2 - \beta_{1} - 2 \beta_{2} + \beta_{3} - \beta_{4} - 2 \beta_{6} ) q^{36} + ( \beta_{1} - \beta_{2} - 3 \beta_{3} + \beta_{4} + \beta_{5} - \beta_{6} ) q^{37} + ( 2 + 2 \beta_{5} - 2 \beta_{6} ) q^{38} + ( 2 + \beta_{1} + \beta_{2} + \beta_{3} + \beta_{4} - \beta_{5} + \beta_{6} + 2 \beta_{7} ) q^{39} + 2 \beta_{5} q^{41} + ( 1 - 2 \beta_{1} - \beta_{2} - 3 \beta_{3} - 2 \beta_{4} + 2 \beta_{6} - \beta_{7} ) q^{42} + ( -\beta_{4} - \beta_{6} ) q^{43} + ( -4 + 2 \beta_{1} + 2 \beta_{3} - 2 \beta_{4} ) q^{44} + ( -1 - \beta_{2} + \beta_{3} - 2 \beta_{5} + 2 \beta_{6} - \beta_{7} ) q^{46} + ( -4 + 5 \beta_{1} + \beta_{2} + \beta_{3} + 2 \beta_{4} - \beta_{5} + 2 \beta_{7} ) q^{47} + ( 3 + 2 \beta_{1} + \beta_{3} - \beta_{5} - 3 \beta_{6} + \beta_{7} ) q^{48} + ( -3 + 4 \beta_{1} + 2 \beta_{2} + 2 \beta_{3} + 2 \beta_{4} - 2 \beta_{5} - 2 \beta_{6} - 2 \beta_{7} ) q^{49} + ( 2 + 3 \beta_{1} + \beta_{2} - \beta_{3} + \beta_{4} + \beta_{5} + \beta_{6} ) q^{51} + ( -2 - 2 \beta_{1} - 2 \beta_{4} + 2 \beta_{5} + 2 \beta_{6} + 2 \beta_{7} ) q^{52} + ( -2 - 2 \beta_{4} - 2 \beta_{6} ) q^{53} + ( 5 + \beta_{2} + 2 \beta_{3} + 2 \beta_{4} - 2 \beta_{5} - 2 \beta_{6} ) q^{54} + ( 4 - 2 \beta_{2} - 2 \beta_{5} + 2 \beta_{6} ) q^{56} + ( -\beta_{1} + 3 \beta_{2} + \beta_{3} + \beta_{4} - \beta_{5} - 3 \beta_{6} - 2 \beta_{7} ) q^{57} + ( 2 \beta_{1} + 2 \beta_{2} + 2 \beta_{4} - 2 \beta_{5} + 2 \beta_{6} + 2 \beta_{7} ) q^{58} + ( 2 \beta_{1} - 2 \beta_{2} + 2 \beta_{5} ) q^{59} + ( 2 \beta_{4} + 2 \beta_{5} - 2 \beta_{6} ) q^{61} + ( 4 - 2 \beta_{1} + 2 \beta_{2} - 2 \beta_{3} - 2 \beta_{5} - 2 \beta_{6} - 2 \beta_{7} ) q^{62} + ( 4 - \beta_{1} - \beta_{2} - 5 \beta_{3} - 2 \beta_{4} + \beta_{5} + 2 \beta_{6} + 2 \beta_{7} ) q^{63} + ( 3 + 2 \beta_{2} - \beta_{3} - 2 \beta_{4} + \beta_{5} - \beta_{6} + \beta_{7} ) q^{64} + ( -4 - 2 \beta_{2} + 2 \beta_{3} - 2 \beta_{4} - 2 \beta_{5} - 2 \beta_{6} ) q^{66} + ( 4 + 4 \beta_{1} + \beta_{4} + \beta_{6} + 4 \beta_{7} ) q^{67} + ( 2 - 2 \beta_{1} - 2 \beta_{4} + 2 \beta_{5} + 2 \beta_{6} - 2 \beta_{7} ) q^{68} + ( 3 - 3 \beta_{2} - \beta_{3} - \beta_{4} + 3 \beta_{6} + \beta_{7} ) q^{69} + ( -4 + 6 \beta_{1} + 2 \beta_{2} + 2 \beta_{3} + 4 \beta_{4} - 2 \beta_{5} ) q^{71} + ( 1 + 2 \beta_{2} + 3 \beta_{3} - \beta_{5} - \beta_{6} + \beta_{7} ) q^{72} + ( 2 - 6 \beta_{1} - 2 \beta_{2} - 2 \beta_{3} - 4 \beta_{4} + 2 \beta_{5} ) q^{73} + ( 4 - 4 \beta_{1} + 2 \beta_{2} - 2 \beta_{3} - 4 \beta_{4} + 2 \beta_{5} + 2 \beta_{6} - 2 \beta_{7} ) q^{74} + ( -2 - 2 \beta_{1} + 4 \beta_{2} + 2 \beta_{4} - 2 \beta_{5} - 2 \beta_{6} - 2 \beta_{7} ) q^{76} + ( -4 \beta_{1} + 2 \beta_{4} + 2 \beta_{6} - 4 \beta_{7} ) q^{77} + ( -4 - 2 \beta_{1} - 2 \beta_{2} + 2 \beta_{5} - 2 \beta_{6} ) q^{78} + ( -\beta_{1} + \beta_{2} + \beta_{3} - \beta_{4} + \beta_{5} + \beta_{6} ) q^{79} + ( 1 - 2 \beta_{1} + 2 \beta_{2} + 2 \beta_{3} + 2 \beta_{4} + 2 \beta_{6} ) q^{81} + ( 2 \beta_{2} + 2 \beta_{4} - 2 \beta_{5} - 2 \beta_{6} - 2 \beta_{7} ) q^{82} + ( -2 \beta_{1} + 2 \beta_{2} - 2 \beta_{3} - \beta_{4} + 2 \beta_{5} + \beta_{6} ) q^{83} + ( 8 - 2 \beta_{1} - 2 \beta_{2} - 2 \beta_{3} - 2 \beta_{4} + 2 \beta_{5} + 4 \beta_{6} + 2 \beta_{7} ) q^{84} + ( -1 + \beta_{2} - \beta_{3} + \beta_{7} ) q^{86} + ( -4 - 2 \beta_{2} - 2 \beta_{4} + 4 \beta_{5} + 4 \beta_{6} + 2 \beta_{7} ) q^{87} + ( -2 + 4 \beta_{1} - 2 \beta_{3} - 2 \beta_{5} - 2 \beta_{6} + 2 \beta_{7} ) q^{88} + ( -4 \beta_{1} + 4 \beta_{2} - 4 \beta_{3} ) q^{89} + ( 4 - 6 \beta_{1} - 2 \beta_{2} - 2 \beta_{3} - 4 \beta_{4} + 2 \beta_{5} ) q^{91} + ( 4 + 2 \beta_{1} - 4 \beta_{2} + 2 \beta_{3} - 2 \beta_{4} + 2 \beta_{6} + 2 \beta_{7} ) q^{92} + ( -\beta_{1} + 3 \beta_{2} - 3 \beta_{3} + \beta_{4} - \beta_{5} + 3 \beta_{6} + 2 \beta_{7} ) q^{93} + ( -5 - \beta_{2} - 3 \beta_{3} - 4 \beta_{4} + 2 \beta_{5} - 2 \beta_{6} - \beta_{7} ) q^{94} + ( -5 - 4 \beta_{1} + 2 \beta_{2} - \beta_{3} - 2 \beta_{4} + \beta_{5} - \beta_{6} + \beta_{7} ) q^{96} + ( -2 + 2 \beta_{1} + 2 \beta_{2} + 2 \beta_{3} + 4 \beta_{4} - 2 \beta_{5} - 4 \beta_{7} ) q^{97} + ( -6 + \beta_{1} - 2 \beta_{3} - 2 \beta_{4} - 2 \beta_{5} + 2 \beta_{6} ) q^{98} + ( 2 + 4 \beta_{1} - 2 \beta_{2} + 4 \beta_{3} + 2 \beta_{4} - 4 \beta_{5} - 2 \beta_{6} + 2 \beta_{7} ) q^{99} +O(q^{100})$$ $$\operatorname{Tr}(f)(q)$$ $$=$$ $$8q - q^{2} + q^{4} + q^{6} - 7q^{8} + O(q^{10})$$ $$8q - q^{2} + q^{4} + q^{6} - 7q^{8} + q^{12} - 6q^{14} - 7q^{16} + 7q^{18} - 4q^{19} - 4q^{21} - 14q^{22} + 4q^{23} - 11q^{24} + 16q^{26} + 12q^{27} + 2q^{28} - 11q^{32} + 4q^{33} + 13q^{36} + 16q^{38} + 16q^{39} + 6q^{42} - 30q^{44} - 8q^{46} - 28q^{47} + 25q^{48} - 16q^{49} + 20q^{51} - 20q^{52} - 16q^{53} + 41q^{54} + 30q^{56} + 4q^{57} + 2q^{58} + 34q^{62} + 28q^{63} + 25q^{64} - 34q^{66} + 32q^{67} + 16q^{68} + 20q^{69} - 24q^{71} + 9q^{72} + 8q^{73} + 32q^{74} - 12q^{76} - 36q^{78} + 8q^{81} + 4q^{82} + 58q^{84} - 8q^{86} - 36q^{87} - 14q^{88} + 24q^{91} + 28q^{92} - 40q^{94} - 43q^{96} - 8q^{97} - 47q^{98} + 16q^{99} + O(q^{100})$$

Basis of coefficient ring in terms of a root $$\nu$$ of $$x^{8} - x^{7} - 2 x^{5} + 4 x^{4} - 4 x^{3} - 8 x + 16$$:

 $$\beta_{0}$$ $$=$$ $$1$$ $$\beta_{1}$$ $$=$$ $$\nu$$ $$\beta_{2}$$ $$=$$ $$($$$$\nu^{6} + \nu^{5} - 4$$$$)/4$$ $$\beta_{3}$$ $$=$$ $$($$$$\nu^{7} + \nu^{6} + 4 \nu^{2} - 8 \nu - 8$$$$)/8$$ $$\beta_{4}$$ $$=$$ $$($$$$-\nu^{7} - \nu^{6} + 4 \nu^{2} + 8$$$$)/8$$ $$\beta_{5}$$ $$=$$ $$($$$$\nu^{7} + \nu^{6} - 4 \nu^{4} + 4 \nu^{3} + 4 \nu^{2} - 16$$$$)/8$$ $$\beta_{6}$$ $$=$$ $$($$$$\nu^{7} - \nu^{6} + 2 \nu^{5} + 4 \nu^{3} - 4 \nu^{2} - 8$$$$)/8$$ $$\beta_{7}$$ $$=$$ $$($$$$-\nu^{7} + \nu^{6} - 2 \nu^{5} + 4 \nu^{4} + 4 \nu^{2} - 8 \nu + 8$$$$)/8$$
 $$1$$ $$=$$ $$\beta_0$$ $$\nu$$ $$=$$ $$\beta_{1}$$ $$\nu^{2}$$ $$=$$ $$\beta_{4} + \beta_{3} + \beta_{1}$$ $$\nu^{3}$$ $$=$$ $$\beta_{7} + \beta_{6} + \beta_{5} - \beta_{3} + 1$$ $$\nu^{4}$$ $$=$$ $$\beta_{7} + \beta_{6} - \beta_{5} + \beta_{3} + 2 \beta_{1} - 1$$ $$\nu^{5}$$ $$=$$ $$-\beta_{7} + \beta_{6} - \beta_{5} + 2 \beta_{4} + \beta_{3} + 2 \beta_{2} + 1$$ $$\nu^{6}$$ $$=$$ $$\beta_{7} - \beta_{6} + \beta_{5} - 2 \beta_{4} - \beta_{3} + 2 \beta_{2} + 3$$ $$\nu^{7}$$ $$=$$ $$-\beta_{7} + \beta_{6} - \beta_{5} - 2 \beta_{4} + 5 \beta_{3} - 2 \beta_{2} + 4 \beta_{1} + 5$$

## Character values

We give the values of $$\chi$$ on generators for $$\left(\mathbb{Z}/600\mathbb{Z}\right)^\times$$.

 $$n$$ $$151$$ $$301$$ $$401$$ $$577$$ $$\chi(n)$$ $$-1$$ $$-1$$ $$-1$$ $$1$$

## Embeddings

For each embedding $$\iota_m$$ of the coefficient field, the values $$\iota_m(a_n)$$ are shown below.

For more information on an embedded modular form you can click on its label.

Label $$\iota_m(\nu)$$ $$a_{2}$$ $$a_{3}$$ $$a_{4}$$ $$a_{5}$$ $$a_{6}$$ $$a_{7}$$ $$a_{8}$$ $$a_{9}$$ $$a_{10}$$
251.1
 1.40014 + 0.199044i 1.40014 − 0.199044i 0.814732 + 1.15595i 0.814732 − 1.15595i −0.578647 + 1.29041i −0.578647 − 1.29041i −1.13622 + 0.842022i −1.13622 − 0.842022i
−1.40014 0.199044i 0.520627 1.65195i 1.92076 + 0.557378i 0 −1.05776 + 2.20933i 1.92736i −2.57839 1.16272i −2.45790 1.72010i 0
251.2 −1.40014 + 0.199044i 0.520627 + 1.65195i 1.92076 0.557378i 0 −1.05776 2.20933i 1.92736i −2.57839 + 1.16272i −2.45790 + 1.72010i 0
251.3 −0.814732 1.15595i −1.48716 + 0.887900i −0.672424 + 1.88357i 0 2.23800 + 0.995672i 0.797253i 2.72515 0.757320i 1.42327 2.64089i 0
251.4 −0.814732 + 1.15595i −1.48716 0.887900i −0.672424 1.88357i 0 2.23800 0.995672i 0.797253i 2.72515 + 0.757320i 1.42327 + 2.64089i 0
251.5 0.578647 1.29041i −0.751690 1.56044i −1.33034 1.49339i 0 −2.44857 + 0.0670494i 4.28591i −2.69688 + 0.852541i −1.86993 + 2.34593i 0
251.6 0.578647 + 1.29041i −0.751690 + 1.56044i −1.33034 + 1.49339i 0 −2.44857 0.0670494i 4.28591i −2.69688 0.852541i −1.86993 2.34593i 0
251.7 1.13622 0.842022i 1.71822 0.218455i 0.581998 1.91345i 0 1.76833 1.69499i 3.64426i −0.949886 2.66415i 2.90455 0.750707i 0
251.8 1.13622 + 0.842022i 1.71822 + 0.218455i 0.581998 + 1.91345i 0 1.76833 + 1.69499i 3.64426i −0.949886 + 2.66415i 2.90455 + 0.750707i 0
 $$n$$: e.g. 2-40 or 990-1000 Embeddings: e.g. 1-3 or 251.8 Significant digits: Format: Complex embeddings Normalized embeddings Satake parameters Satake angles

## Inner twists

Char Parity Ord Mult Type
1.a even 1 1 trivial
24.f even 2 1 inner

## Twists

By twisting character orbit
Char Parity Ord Mult Type Twist Min Dim
1.a even 1 1 trivial 600.2.b.e 8
3.b odd 2 1 600.2.b.f 8
4.b odd 2 1 2400.2.b.e 8
5.b even 2 1 120.2.b.b yes 8
5.c odd 4 2 600.2.m.d 16
8.b even 2 1 2400.2.b.f 8
8.d odd 2 1 600.2.b.f 8
12.b even 2 1 2400.2.b.f 8
15.d odd 2 1 120.2.b.a 8
15.e even 4 2 600.2.m.c 16
20.d odd 2 1 480.2.b.a 8
20.e even 4 2 2400.2.m.c 16
24.f even 2 1 inner 600.2.b.e 8
24.h odd 2 1 2400.2.b.e 8
40.e odd 2 1 120.2.b.a 8
40.f even 2 1 480.2.b.b 8
40.i odd 4 2 2400.2.m.d 16
40.k even 4 2 600.2.m.c 16
60.h even 2 1 480.2.b.b 8
60.l odd 4 2 2400.2.m.d 16
120.i odd 2 1 480.2.b.a 8
120.m even 2 1 120.2.b.b yes 8
120.q odd 4 2 600.2.m.d 16
120.w even 4 2 2400.2.m.c 16

By twisted newform orbit
Twist Min Dim Char Parity Ord Mult Type
120.2.b.a 8 15.d odd 2 1
120.2.b.a 8 40.e odd 2 1
120.2.b.b yes 8 5.b even 2 1
120.2.b.b yes 8 120.m even 2 1
480.2.b.a 8 20.d odd 2 1
480.2.b.a 8 120.i odd 2 1
480.2.b.b 8 40.f even 2 1
480.2.b.b 8 60.h even 2 1
600.2.b.e 8 1.a even 1 1 trivial
600.2.b.e 8 24.f even 2 1 inner
600.2.b.f 8 3.b odd 2 1
600.2.b.f 8 8.d odd 2 1
600.2.m.c 16 15.e even 4 2
600.2.m.c 16 40.k even 4 2
600.2.m.d 16 5.c odd 4 2
600.2.m.d 16 120.q odd 4 2
2400.2.b.e 8 4.b odd 2 1
2400.2.b.e 8 24.h odd 2 1
2400.2.b.f 8 8.b even 2 1
2400.2.b.f 8 12.b even 2 1
2400.2.m.c 16 20.e even 4 2
2400.2.m.c 16 120.w even 4 2
2400.2.m.d 16 40.i odd 4 2
2400.2.m.d 16 60.l odd 4 2

## Hecke kernels

This newform subspace can be constructed as the intersection of the kernels of the following linear operators acting on $$S_{2}^{\mathrm{new}}(600, [\chi])$$:

 $$T_{7}^{8} + 36 T_{7}^{6} + 384 T_{7}^{4} + 1136 T_{7}^{2} + 576$$ $$T_{11}^{8} + 48 T_{11}^{6} + 672 T_{11}^{4} + 2560 T_{11}^{2} + 256$$ $$T_{23}^{4} - 2 T_{23}^{3} - 44 T_{23}^{2} + 188 T_{23} - 192$$ $$T_{43}^{4} - 12 T_{43}^{2} + 4 T_{43} + 16$$

## Hecke Characteristic Polynomials

$p$ $F_p(T)$
$2$ $$1 + T + 2 T^{3} + 4 T^{4} + 4 T^{5} + 8 T^{7} + 16 T^{8}$$
$3$ $$1 - 4 T^{3} - 2 T^{4} - 12 T^{5} + 81 T^{8}$$
$5$ 1
$7$ $$1 - 20 T^{2} + 244 T^{4} - 2364 T^{6} + 18678 T^{8} - 115836 T^{10} + 585844 T^{12} - 2352980 T^{14} + 5764801 T^{16}$$
$11$ $$1 - 40 T^{2} + 892 T^{4} - 14424 T^{6} + 178918 T^{8} - 1745304 T^{10} + 13059772 T^{12} - 70862440 T^{14} + 214358881 T^{16}$$
$13$ $$1 - 52 T^{2} + 1556 T^{4} - 31660 T^{6} + 477814 T^{8} - 5350540 T^{10} + 44440916 T^{12} - 250994068 T^{14} + 815730721 T^{16}$$
$17$ $$1 - 84 T^{2} + 3604 T^{4} - 101164 T^{6} + 2018902 T^{8} - 29236396 T^{10} + 301009684 T^{12} - 2027555796 T^{14} + 6975757441 T^{16}$$
$19$ $$( 1 + 2 T + 40 T^{2} + 42 T^{3} + 766 T^{4} + 798 T^{5} + 14440 T^{6} + 13718 T^{7} + 130321 T^{8} )^{2}$$
$23$ $$( 1 - 2 T + 48 T^{2} + 50 T^{3} + 958 T^{4} + 1150 T^{5} + 25392 T^{6} - 24334 T^{7} + 279841 T^{8} )^{2}$$
$29$ $$( 1 + 52 T^{2} - 112 T^{3} + 1286 T^{4} - 3248 T^{5} + 43732 T^{6} + 707281 T^{8} )^{2}$$
$31$ $$1 - 108 T^{2} + 5412 T^{4} - 170900 T^{6} + 4790966 T^{8} - 164234900 T^{10} + 4998095652 T^{12} - 95850397548 T^{14} + 852891037441 T^{16}$$
$37$ $$1 - 68 T^{2} + 4788 T^{4} - 250460 T^{6} + 9311478 T^{8} - 342879740 T^{10} + 8973482868 T^{12} - 174469395812 T^{14} + 3512479453921 T^{16}$$
$41$ $$1 - 264 T^{2} + 32668 T^{4} - 2456248 T^{6} + 122337670 T^{8} - 4128952888 T^{10} + 92311960348 T^{12} - 1254027519624 T^{14} + 7984925229121 T^{16}$$
$43$ $$( 1 + 160 T^{2} + 4 T^{3} + 10078 T^{4} + 172 T^{5} + 295840 T^{6} + 3418801 T^{8} )^{2}$$
$47$ $$( 1 + 14 T + 168 T^{2} + 1186 T^{3} + 9166 T^{4} + 55742 T^{5} + 371112 T^{6} + 1453522 T^{7} + 4879681 T^{8} )^{2}$$
$53$ $$( 1 + 8 T + 188 T^{2} + 1144 T^{3} + 14454 T^{4} + 60632 T^{5} + 528092 T^{6} + 1191016 T^{7} + 7890481 T^{8} )^{2}$$
$59$ $$1 - 312 T^{2} + 41500 T^{4} - 3304648 T^{6} + 204947494 T^{8} - 11503479688 T^{10} + 502870481500 T^{12} - 13160326495992 T^{14} + 146830437604321 T^{16}$$
$61$ $$1 - 280 T^{2} + 39452 T^{4} - 3783016 T^{6} + 267380710 T^{8} - 14076602536 T^{10} + 546246119132 T^{12} - 14425704821080 T^{14} + 191707312997281 T^{16}$$
$67$ $$( 1 - 16 T + 216 T^{2} - 2388 T^{3} + 22862 T^{4} - 159996 T^{5} + 969624 T^{6} - 4812208 T^{7} + 20151121 T^{8} )^{2}$$
$71$ $$( 1 + 12 T + 220 T^{2} + 1564 T^{3} + 18854 T^{4} + 111044 T^{5} + 1109020 T^{6} + 4294932 T^{7} + 25411681 T^{8} )^{2}$$
$73$ $$( 1 - 4 T + 180 T^{2} - 252 T^{3} + 14966 T^{4} - 18396 T^{5} + 959220 T^{6} - 1556068 T^{7} + 28398241 T^{8} )^{2}$$
$79$ $$1 - 524 T^{2} + 125604 T^{4} - 18135668 T^{6} + 1736460342 T^{8} - 113184703988 T^{10} + 4892285973924 T^{12} - 127377826693004 T^{14} + 1517108809906561 T^{16}$$
$83$ $$1 - 512 T^{2} + 125148 T^{4} - 18790160 T^{6} + 1886502918 T^{8} - 129445412240 T^{10} + 5939313956508 T^{12} - 167393471164928 T^{14} + 2252292232139041 T^{16}$$
$89$ $$1 - 328 T^{2} + 61788 T^{4} - 8336760 T^{6} + 843121542 T^{8} - 66035475960 T^{10} + 3876717586908 T^{12} - 163009863435208 T^{14} + 3936588805702081 T^{16}$$
$97$ $$( 1 + 4 T + 212 T^{2} + 1948 T^{3} + 21526 T^{4} + 188956 T^{5} + 1994708 T^{6} + 3650692 T^{7} + 88529281 T^{8} )^{2}$$


text:
Possible Mistake in Calculating Posterior of Distribution using Bayes Rule and Integration

I have been struggling on a homework question where I have to compute the posterior density of a distribution. While I can compute the posterior, I believe I made a mistake because the area under the posterior density tends to infinity.

I have spent hours double checking my work and have had several friends also come up with the same answer, so I was hoping that someone could take a look at the work and either spot the mistake or explain what is going on.

The setup is as follows. Let:

• $y = (y_1,\ldots,y_N)$
• $p_x(x) = \exp(-x)$
• $p_{y_i|x} = xy_i^{x-1} = x\exp((x-1)\log{y_i})$ for $y_i \in (0,1)$ and $x>0$

Given this information, we can calculate $p_{x|y}(x|y)$ using Bayes' Rule as follows:

\begin{align} p_{x|y}(x|y) &\propto p_{y|x}(y|x)p_x(x) \\ &\propto \prod_{i=1}^N p_{y_i|x}(y_i|x)p_x(x)\\ &\propto \prod_{i=1}^N x\exp((x-1)\log{y_i})\exp(-x)\\ &\propto x^N\exp((x-1)\sum_{i=1}^N\log{y_i})\exp(-Nx)\\ &\propto x^N\exp(x(\sum_{i=1}^N\log{y_i}-N))\exp(\sum_{i=1}^N\log{y_i})\\ \end{align}

Letting $S=\sum_{i=1}^N\log{y_i}$, this results in:

\begin{align} p_{x|y}(x|y) = \frac{1}{Z}x^N\exp(x(S-N)\exp(-S) \end{align}

Where $Z$ denotes a normalization constant that can be calculated as:

\begin{align} Z &= \int_{x>0}p_{y|x}(y|x)p_x(x)dx \\ &= \int_{x>0}x^N\exp(x(S-N))\exp(-S)dx \\ &= \exp(-S)\frac{1}{N-S}\int_{x>0}x^N(N-S)\exp(-x(N-S))\exp(-S)dx \\ &= \exp(-S)\frac{1}{N-S}\mathbb{E}[X^N] \\ &= \exp(-S)\frac{1}{N-S}\frac{N!}{(N-S)^N}\\ &= \exp(-S)\frac{N!}{(N-S)^{N+1}}\\ \end{align}

Note that I have evaluated the above integral using the $N$th moment of an exponential random variable.

Putting everything together, this gives me:

\begin{align} p_{x|y}(x|y) &= \frac{x^N\exp(x(S-N))\exp(-S)}{\exp(-S)\frac{N!}{(N-S)^{N+1}}}\\ &= \frac{(N-S)^{N+1}}{N!} x^N\exp(x(S-N))\\ \end{align}

Unfortunately, this density approaches infinity as $x \rightarrow \infty$, and so it does not normalize to 1.

• "this density approaches infinity as x→∞"... how do you arrive at that conclusion? – Glen_b Apr 24 '13 at 5:00

$$\int_0^\infty p(x|y)dx=\int_0^\infty (S-1)^2x e^{(-x(S-1))}dx=(S-1)\int_0^\infty (S-1)x e^{(-x(S-1))}dx=(S-1)E(V)$$ where $V\sim Exp\left(\frac{1}{(S-1)}\right)$. The expected value of an exponentially distributed variable is its parameter. Hence,
$$\int_0^\infty p(x|y)dx=(S-1)E(V)=\frac{(S-1)}{(S-1)}=1$$
• Hmm, I used a negative sign in front of $x$ in my calculations (which you apparently didn't have), but that should not change anything. Since $y_i\in(0,1)$ the sum will be negative. Since the parameter in an exponential must be positive, you should probably define $S$ as $-\sum_{i=1}^n\log y_i$ instead of without the negative sign. And then you get a negative sign in front of the $x$ as I then used. – hejseb Apr 24 '13 at 6:00


text:
# proof of inner direct sum of projection operators

I would like to understand part of a proof that is unclear to me.

Theorem:

Let $V$ be a $K$-vectorspace and $q_1, \dots, q_r$ a set of projection operators on $V$ such that $\sum_{i=1}^r{q_i} = 1_V$ and for all $i \neq j$, $q_iq_j = 0$. Let $V_i =$ im $q_i$. Then $V = V_1 \oplus \dots \oplus V_r$.

Proof:

Since $1_V = \sum_{i=1}^r{q_i}$, then $v = \sum_{i=1}^r{q_i(v)}$. Therefore $V = \sum_{i=1}^r{V_i}$. All that is left to prove is that this decomposition is unique. Since $v = v_1 + \dots + v_r$, $v_i \in V_i$, then we must show that $v_i = q_i(v)$. Because $V_i =$ im $q_i$, then $v_i = q_i(w_i)$ with $w_i \in V$.

This implies $q_j(v) = q_j(\sum_{i=1}^r{q_i(w_i)}) = q_j^2(w_j) = q_j(w_j) = v_j$. Q.E.D.

Question:

How does showing that $v_i = q_i(v)$, imply that the decomposition is unique?

-

You made a transcription error, I think, the fourth senctence of the proof should not start with "Since" but with "Assume that". We know at that point that $v = \sum_{i=1}^r{q_i(v)}$ is one way to write $v$ as sum of elements of each of the $V_i$, and we assume that $v = v_1 + \dots + v_r$ is also a way to write $v$ as sum of elements of each of the $V_i$; showing uniqueness amounts to showing that these two ways must be one and the same. But that means precisely showing that $q_i(v)=v_i$ for $i=1,\ldots,r$, which is what is done in the last line of the proof.


text:
# Number of sets

Consider the two subsets of the integers $$A=\{1,2,3,4,5,6,7\}$$ and $$B=\{1,2,3,4\}.$$ How many sets of integers $$X$$ satisfy

$X \cap A^c = \emptyset, \ \lvert X \cap B \rvert=2?$

×


text:
# MATLAB Integration¶

Note

MATLAB does not support Tkinter, which disables matplotlib. This means that display() will not generate a display and might interrupt the program.

## Setting Python Interpreter¶

As of version R2015b, MATLAB allows you to call libraries from other programming languages, including Python, which enables users to run magpylib from the MATLAB interface. The following guide intends to provide a digest of the Official MATLAB documentation with a focus on utilizing this interface with magpylib.

Running >>> pyversion following line in the MATLAB console tells you which Python environment (user space interpreter) is connected to your MATLAB interface.

If magpylib is already installed in this environment you can directly call it, as shown in the [Example] below. If not please follow the Installation instructions and install magpylib.

If you choose to install magpylib in a different environment than the one that is currently connected to your MATLAB interpreter, use the following command in the MATLAB console to connect the new environment instead (choose correct path pointing at your Python interpreter).

>>> pyversion C:\Users\...\AppData\Local\Continuum\anaconda3\envs\magpy\python.exe

## Example¶

The following MATLAB 2019 script showcases most functionalities.

%%%%%%%%%%%%%%%%%% magpytest.m %%%%%%%%%%%%%%
%% Showcase Python + MATLAB Interoperability.
%% Define and calculate the field of a
%% Cuboid magnet.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% Import the magpylib v4 library
py.importlib.import_module("magpylib")

%% Define Python types for input
vec3 = py.list({1,2,3})

%% Define input
mag = py.list({22,33,44})
dim = py.list({2,2,2})
pos = py.list({1,2,3})
observer = py.list({2,3,4})

%% Execute Python
% 2 positional and 1 keyword argument in Cuboid class
src = py.magpylib.magnet.Cuboid(mag, dim, pyargs('position', pos))
pythonResult = src.getB(observer)

%% Convert Python Result to MATLAB data format
matlabResult = double(pythonResult)

Note

With old versions of Matlab the double(pythonResult) type conversion might give an error message.


text:
Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

July 20, 2019
July 20, 2019
Press Releases
July 20, 2019
Games Press

If you enjoy reading this site, you might also want to check out these UBM Tech sites:

The Making of Cinderella VR

by Laura Tallardy on 11/08/18 10:28:00 am

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

You may remember me from way back in 2014, when I wrote about the Making of Princess Birthday Party Puzzles.  Well I'm back!  In VR form!  I've been transitioning into VR development from mobile development, and... well, I'll let the diary take over from here :)  Note, this was originally intended to be spread across several pages but is presented here as only one very long page.  So enjoy/excuse the length!

I'm super excited to be releasing my new project for 2018, Cinderella VR, an awesome collaboration with Scott Adelman!

 I've been keeping a dev diary about how we're making the game- it's been a really long journey so far and we're not quite done!  I want to share our experiences developing a virtual reality game.  Coming from a mobile game background, there are tons of dev write-ups and pre-mortems and post-mortems but VR is still fairly new and there aren't as many out write-ups there.  Hopefully this will add to the VR game dev diary library and my hope is that it helps others get inspired about making work in VR!  And also hopefully everyone will check out our game too :) This is a much bigger project that I'm used to blogging about, so I'm going to try and divide this up into sections.  It's also an homage to ultra-long, ultra-specific blog entries that I've occasionally had the privilege to enjoy.  I thought of editing it down, but it's been a long 10 months and a lot has happened and we've done so much work that I'm leaving it all in.  I've also been writing it for a few months now, so I might mention being at a certain point in the game at a certain point in the diary, then later I'm totally at a different point!  It's not time travel, just bad editing. OK so here is my online novel about making a VR game.  Enjoy!

INTRO: ABOUT US & OUR GAMES

Scott and I have collaborated on many games in the past six years- we've made 13 mobile games, including 12 animated jigsaw puzzles for kids, and a fun little AR (augmented reality) game called Disco Cats.  The jigsaw puzzles were similar in that the gameplay was the same, but we'd change up the theme and the graphics and UI to make lots of fun variations- Mermaid Princess PuzzlesFairy Ballerina PuzzlesWeather PuzzlesNumber Puzzles, and a lot more.

Disco Cats is a really unique AR app with two main features.  One, you get little dancing cats and disco lights and music and they dance in AR- so you can point your phone at your desk, and they'll do a little dance on your desk.  Two, you can print out a coloring sheet of a dancing cat and color it in however you'd like, then snap a photo and the cat will become animated and dance as well.  It's wild!
â€‹

Our games have gotten 10 million downloads all together!  10 million people saw our games on app stores, said "yes, I want that" and downloaded it to their phones.  It still blows my mind.

In addition to our collaborations, we've both done many other projects that are pretty cool- click through to our websites to see more!
You can see all of my games here:
http://www.lauratallardy.com
and all of Scott's games are here:

PART 1: GETTING STARTED

â€‹What to make?

At the beginning of the year, we talked about what project to work on next- we loved making animated jigsaw puzzle apps and I'd be happy making them for years and years, but unfortunately larger forces beyond our control suggested we move on to a new type of project.  We were both really interested in learning Unity, and how to make a VR game.  Previously we've worked in Corona (great engine and amazing community) but for VR we needed a big 3D engine, and Unity came with all the bells and whistles we needed so Unity it was.
â€‹
I had wanted to do a fairy tale game for a while- if you've seen my work, it's no big stretch to imagine I love fairy tales!  We were overwhelmed by the choices, so we narrowed it down to three (I believe it was Sleeping Beauty, Cinderella or Puss in Boots).  Our original choice was Sleeping Beauty, but once I got into the story and trying to think how to translate it into a VR game, it wasn't quite jelling in the easy way that Cinderella seemed to lend itself to the medium.  The story was a little kickier, there were some fun characters involved, and Cinderella is awake for the whole story which is a plus for a protagonist!

â€‹Breaking down the Gameplay

After we had our story, we had to break it down into parts.  We mapped out the script into three main acts- getting to know Cinderella and her life was Act One, going to the Prince's Ball was Act Two, and the shoe fitting and ending was Act Three.  The general plan was to play out the story in a 3d environment using 2D characters- I've done a lot of 2D animation for our other games and the softwares fit together so we thought it would be a fun style.  So the story plays out in front of the player, and they jump in occasionally to "help out" with an interactive game.

â€‹Who does what? Setting up the teamwork

â€‹We sketched out basic game ideas, we had our basic scenes.  Then we decided who would do what.  I've done the art for all of our other games so I volunteered for art again- I'd put together the 3D sets and do the character art and animation and whatever other design we needed.  I also took care of the the script- it's not perfect but I'm proud of it.  Scott has strong programming skills so he worked on getting the interactions working in Unity and VR- taking the scenes I put together and making them come to life with interactive objects, particles, and all sorts of fun stuff.  Since we are a two-person studio with limited time, we decided to create what we were reasonably capable of, and out source the rest.  We purchased a good amount of 3D assets- while I'd love to learn more about 3D modeling I didn't have enough skills for a project of this level.  We also sourced music and sound effects, and will be hiring voice actors.

Fun fact, we need dialog to work out the animations and the scenes and timing but didn't want to hire voice actors right away.  Since the game will be changing slightly until it's done, we decided to put off the voice actors until the end when we had a finalized script.  So in the meantime, I recorded the computer talking for placeholder audio- so all the characters have digital Siri-style computer voices.  I've gotten used to it by now, but I'm sure having real non-computer voices will add a lot.

What software/systems to use?

We had both decided on using Unity for this new project, since it can be 2D, 3D, VR- and seems like a good one to know.  We've used Dropbox for file sharing in the past, so that one was easy.  We have both an Oculus Rift and an HTC Vive between us, and both also have mobile VR gear, but we decided to work on just Oculus/Vive since the controllers are similar.  My hope is to also port a gaze-control version for mobile one day, but I have a long list of things to do one day, haha.

Version Control?

The biggest question was version control.  With our apps, many of them were easy enough to work on without version control.  As we got into Disco Cats however, we started using Git and Bitbucket so we could both work on the Corona-based game without stepping on each others' toes.

A quick Google search revealed that PlasticSCM was the preferred version control software for Unity but Git/Bitbucket could also be used.  Trying to keep the budget down, we went with Git (PlasticSCM asks for a monthly fee).  It definitely had a learning curve as we got up and going, and we ran into more than one problem- somewhere between Unity and Git I'd overwrite prefabs that would erase script assignments and bug everything up- still not sure exactly what we did there and we were able to untangle/rewrite everything again (Sorry, Scott!!), but I was left wondering if PlasticSCM would have averted some of these Unity-specific issues.
But, at what cost??
(probably 10 months of a PlasticSCM subscription)

Art

I'll go more into the art stuff later, but we also used Esoteric's Spine software for the animations- they were importable in to both Corona and Unity, so I was happy to have familiar software to work in.

Everything Else

A game cannot be built on Unity alone!  Actually, it totally can be.  But we had some other random needs.  We're across the country from each other so we needed a chat- we'd been using GChat for years so GChat it was.  I liked the ability to archive important conversations- we hashed out a lot of dev plans in GChat.  Unfortunately searching was sometimes difficult and we are chatterboxes with a quickly moving chat log, so anything super important I manually copied and pasted in the master Spec Doc.

The Spec Doc is the central document for the game- it's stored on Google Drive and shared between us.  I created it to keep track of our sprawling project- characters and sketches, scenes and diagrams, descriptions of scenes, minigames, marketing ideas, game tutorials, and just anything else that was important to keep track of.  Going back it's a lengthy document but all the stuff in there is super important.

There's also the Asset Sheet, a Google Docs spreadsheet that lists out 1) All the scenes and our progress on various tasks 2) All the animations needed for each scene and character 3) Just long lists of 3D assets to keep track of what we downloaded from where 4) I know there's more than 3 sheets in there but I think one is just more 3D asset links 5) Also there's a list of audio sound effects, background music, and voice actor links.  It's really the sheet I work from the most.
There's also an expenses sheet, which I'll talk about later.

Trello was the other big win, we kept our tasks going and color coded on that for a while, although we both deviated off and on with text file/email lists and Trello lists.  The thing I like about Trello is the mobile app- I'm often on the road while making this game and can't immediately access my computer, so if we are chatting on mobile and I have to jot a few things down I can do it with the Trello app and have it saved.

A few others: Text Edit for notes, Photoshop, Procreate and Spine for graphics, Quicktime for recording temporary dialog and taking screencap movies of strange bugs.  Terminal for fussing around with Git.  Chrome/bitbucket to make sure I haven't mucked up the Git repo.  Weebly for a website.  Game Bar for screen recording for the trailer.

Budget & Expenses

Wow this is always a delicate topic!  We've prided ourselves on most-all of our games generating a positive cash flow, and we manage that mainly by keeping expenses low low low.  We make everything we can and try to shoestring the rest.  We're also both on an indie budget, so that's where we're at going into this.  I'm sure different studios have different budgets.

Our mobile game budgets ranged from $25-60- maybe some were more and some were less but the majority of them fell into that range. Translations, maybe a song license for the promo video, possibly a press release, sometimes a contest. Traditionally we kind of split the cost, one person or the other volunteers and we keep track of who spent what. Then as the game starts to generate revenue, we reimburse ourselves according to the expenses list, then divide up the profit. That's how we've worked in the past, and we decided to do the same for this game. We were both willing to put down a couple hundred, more than usual since it was such a larger scope of a project, but we wanted to keep it under$500 if at all possible.  I don't think we hit that goal exactly but we didn't go wildly over it, so that's decent at least.

Shopping List!

We both came in with VR rigs already so that was not an expense we had to deal with, thank goodness.  Unity is free so that was not a problem either, and I already have my art software.  With Scott doing the code and me doing the character art/animation, we needed:
-3D assets for the game world- environments, props, special effects, etc.
-BGM- Ended up using some free music but purchased a nicely composed song for our minigame.
-Voice Actors- Haven't gotten to this stage yet but this will be our biggest expense.  The game has nine characters and the script is not short, and neither of us really have a good audio studio to set up/enough friends to ply with pizza so we're just going to hire a bunch of voice actors and hope for the best.
-Steam fee- Haven't gotten to this either, but the last time I checked it was a \$100 fee to list a game on Steam.  I believe you can earn it back when you reach a certain threshold, but you do need to front that initial payment.
-Marketing- Been working mostly on the game, and while I do have ongoing marketing notes I don't have costs laid out for it yet.  That said, I do have some plans and could easily spend plenty of money here!

So far our spending is on target but we still have the voice acting & marketing categories to spend in so the final numbers are not in yet. (hah! more on that later!)

â€‹Scheduling

Ohhhh gosh.  Wow.  Did we ever underestimate this job.  We probably still are.  It's still not done.  (Edit- it's finally done!!!)

â€‹The Initial Estimate

We started in early January, and estimated it would take about three months so we'd ship at the end of March (I'm writing this in July).  If we slammed on an app and both worked really hard, we could get it out in 1-2 weeks at the shortest, so we figured learning some new software and hardware would take a couple extra weeks, we'd have the prototypes in no time, and from there it was only a couple weeks to the finished product.  It sounds so sunny and optimistic.

â€‹The Reality

Anyway we both worked really hard on the game- getting the environments set up and basic characters in, working out how to set up the game's progression and organize all the scenes, devising the activities and just doing a huge amount of coding and art and animation.  By March we had a pretty good prototype for the game- it was laid out into scenes, it had characters and some voices and animations the beginnings of the activities and placeholders for others to come.
It was nowhere near done though, so we had an code-red meeting on how to finish it up and ship it ASAP- I estimated if we both kept slamming, we could get it out by the end of June.  And hey- shoot for the stars, land on the moon!  Scott worked like crazy and I tried to keep up, we got an amazing amount of work done and by this point you could play most of the game the whole way though- some things were missing but the game itself was there!  Many of the activities were totally functional, and I had gotten a lot of the art/animation in.  I love animation but always forget it takes much longer than I think it will!
So the game is in a good state, and the light at the end of the tunnel is visible.  It just makes me raise my eyebrow that I thought we could bang out a completely final game using new software for new hardware in 12 weeks.  Haha, we were so young then, back when we started this game.
In the end it took 10 months- I was hoping to finish before my teaching gig started in September, that deadline flew by, then Scott suggested trying to hit mid-September so we could clear this project off of our desks and move on to our next ideas.  We blew through so many deadlines, but eventually we did get it done.

â€‹Keeping Sane

To try and not become development monsters, we both took some time off as summer started for vacations/family visits/recharging but are getting ready to do the third and please-let-it-be-final round of crunch time for the summer!  Fingers crossed we won't hit any road bumps and will be able to ship this out soon.

For real though, crunch time ended up being a big thing at several points in development.  We'd set a date to finish, get amped, work like heck to try and meet the deadline, fail, and then naturally slow down a little bit since we'd been in crunch mode and were tired and still had to eat and do laundry and take care of life stuff.
We probably repeated that cycle two or three times- we got an enormous amount of work done in those times, but it wasn't sustainable and wasn't quite enough to finish the game each time (until the last time!)

PART 2: DESIGNING THE GAME

Creating the Environments

I had a lot of fun with this one- I had a few sketches of how I wanted the world to look, and was able to find some really nice 3D assets for Cinderella's house, surrounding farm, the woods, the Prince's Castle, and the inside of the castle and Cinderella's house.  I laid out the basic sets- houses, trees, mountains in the back- and then added in objects that were needed for different activities.  I spent extra time trying to add in some fun decorations to spruce up the sets and make them more homey, and then towards the end of development I went in to adjust the lighting.  That ended up making one of the biggest differences- suddenly the evening and interior scenes had a lot more magic to them.  Instead of being just "less bright", there were candles, lamps, moonlight- it made a bit difference in atmosphere.

â€‹Unity Hurdles

Not knowing much about the limitations of Unity, I put all of the sets together in one huge scene- Cinderella's house was connected to a path through the woods that was connected to the Prince's Castle.  Exactly like in my sketchbook!  However, our game got pretty sluggy pretty fast- it turns out creating every location in the game every time you load the game is kind of memory intensive.  Scott did some experiments and found out by chopping up the sets, the game loaded a lot faster- so we cut up the sets formally into Cinderella's House, the path through the woods, and the Prince's Castle.

â€‹From a Sketch to 3D World

I sketched out all the locations by hand before I started on 3D- I've found it to be helpful to have a sketched out guide of what you want before jumping into digital art, so I tried to treat this project the same way.  I planned out Cindy's house, inside and out, the castle, inside and out, and how they were laid out respective to each other.
â€‹Cindy's house ended up being a 3D asset so it's not exactly like the sketch, but it was helpful to have the drawing for placing other props (flowers, fences, lamp posts, etc).  The interior castle sketch was the most essential- I was really starting from scratch, so having a visual guide to build out a royal ballroom was super helpful.  Some of the decorations were riffed from what was included in asset packs, but I'm really proud of how it all came together.

I wish there was infinite time to work on projects, if there were I'd have gone further with the castle exterior.  I did go back at one point and add in some rocks around the moat, torches, and a few other decorative elements, but if I had forever to work on this project I'd totally decorate this scene to the nines.

â€‹Setting up the File System

 ...and so forth We mapped out the story in a spreadsheet, and came up with ID numbers for each scene, dividing it up into acts and then further scenes (and then part 1,2,3 as needed).  We made prefabs of the locations and dropped them into the scenes, as well as the player and any characters or props that belonged in that scene.  â€‹We tried to keep the assets fairly organized, but I know one random timeline file got lost and I think it's in the audio folder but at this point I'm too afraid to change it so in the audio folder it stays.

â€‹Prefabs, Scenes & Bugs

So when we dropped prefabs of each location into the scenes, we figured I could keep working on the sets, update the prefabs, and voila!  The locations would update across scenes without any further effort.  It worked like a charm, but after a while we'd start to lose changes Scott had made to scenes- we finally figured out, through much trial and error- that when you update the prefab, you erase any custom scripts, attachments, etc attached to a prefab in particular set.  So I'd add a new flower pot outside the house, hit update, and the game would break every time had a scene outside the house.  Scott came up with a plan- I'd get the locations as finished as I could, we'd update the prefabs one final time, then we wouldn't update them any more.  Any changes would be manual.  It added a couple extra steps to update assets in the locations, but at least I stopped overwriting scripts and attachments left and right.

â€‹UI 4 VR

As we were designing the minigames, we had to figure out ways for the player to interact with the game.  Normally in a mobile game we'd default to buttons, but we didn't want to be so obvious in VR- didn't want to break the immersion.  So we came up with some really fun actions- instead of clicking "ok" to confirm you like the dress you create for Cinderella, you use a magic wand on the dress and it magically transforms onto Cinderella.  To continue in several scenes, you either have to place an object on a table or pick something up.  We wanted a scene to be able to jump through to the other scenes, and I came up with a circle of banners around the player- you're right outside the castle, the water's going by- it's quite tranquil, and one of my favorite scenes in the game to be in virtually!  And the banners surrounding you wouldn't really work in a 2D game- but in VR, you naturally look around to see what's surrounding you.
The one deviation we made was our pause menu- we weren't sure how else to present a list of options that would be easily visible in each scene, so I created a 3D dialog box with some decorative flowers.  It's pretty intuitive, but the only traditional dialog-box-style UI in the game.

â€‹Creating the Minigames

These were fun to design!  Cinderella VR has eight (nine?) minigames total, so there were a lot of interactions and games to work out.  We both came up with ideas on our own, and a few were created in collaboration.  The carriage ride (below), the dancing game and the apple throwing game took the most to work out; the flower picking, cooking, dress making, balloon popping and invitation scenes fell into place pretty easily.  We had a lot of back and forth on the former- how to lay out the carriage game, how to detect dancing in the dancing game, and getting the apple throwing just right (it played out differently on our separate computers, took a couple builds to get synched up).  We sketched out most of the ideas so we'd have a guide for setting up the assets in the scenes, which again was helpful in getting them constructed and ready to be hooked up to the scripts needed to make them interactive.

Sketch for the Dress-Making Activity

Rough Concept for Dancing/Rhythm Game

The Carriage Ride

My original idea was to have the player in the carriage, as if they were driving.  There would be some kind of steering, gas, brake, maybe a jump, and you'd have to steer through the woods and not hit any obstacles.  I thought it would be exciting, but Scott pointed out a high-speed carriage chase would probably trigger some motion sickness in VR.  I hadn't even considered that and conceded it would be a bad idea, but we collaborated on a design for a small arcade style machine.
â€‹It took a few iterations to get right though:

So instead of the player being in the driver's seat, they're controlling the carriage like a little toy car.  It works very similar to a foosball game, and it has a tiny pumpkin and in the tiny pumpkin is a tiny Cinderella wearing the dress you designed and oh my gosh it's so adorable.  Best solution ever.  Plus there's chickens and angry bulls that you have to dodge.  A+ minigame imho.

The Inevitable Bugs

It's not a game until there's bugs.  There were plenty of run of the mill bugs- things not working correctly, appearing in the wrong order, misplaced dialog, etc.

Just some normal bugs

Two notable ones plagued us a couple times- it turns out the hotspots for the Rift and the Vive controllers are slightly different.  The colliders would work fine with the Rift, but I'd have to move my controller until the middle of the controller touched the collider to get it to work.  We ended up having to adjust the controller colliders a few times due to this.  Weird, but I guess that's cross-platform development for you.

â€‹The other bug was for respawning- for several of the activities, you interact with renewable objects.  Once you pick them up, a new one will "grow" in its place.  Something happened in the respawn code where sometimes, if you "picked" an object, a new one would grow in its place, but bigger than the original object.  It then grows too big, "picks" itself, and a new one grows in its place, even larger than the one before.  And so forth, fairly quickly.  Hilarious, but we had to fix it.

Wow those daisies sure grow fast this time of year

A few other funny bugs- the character's puppet bugging out, or me trying to get the farm animals to walk on the ground like normal gravity-obeying animals.

Troubles with Playtesting

So for most of the game's development, due to my studio arrangement, I only had access to the Vive a couple of days a week.  I was able to work on the art and animations and work in Unity, but I couldn't really test anything until I got access to the VR rig.  Then those days would just be filled with long lists of things to test, and I wouldn't get to spend time doing development.  Towards the end of the project I got full-time access to the rig, and it was MUCH easier to develop quickly when I could test right away.
The other issue with testing was that it's difficult to be in VR for long periods of time- your body doesn't always agree with it.  I'm pretty used to it at this point, but during one of my debugging days I had been testing the same scene for a few hours straight and had to stop.  Had to be back in the real world for a little while!  The next day, of course, was right back in- VR debugging waits for no man.
Regarding testing- quick story- I lucked into a meeting with an Oculus representative early in the game's development.  I had around 24 hours to put together a pitch/presentation for the game, as well as gather up some of the game to show.  It was very early in the game so there wasn't much to present, but I cleaned up our Unity build and got it ready to bring in and demo.  I was rushed, and forgot my mouse.  Turns out you need a mouse to really interact with a 3D game in Unity in simulation mode- you can do some very very rudimentary things, but I wasn't able to flip the camera around and really show off what we had done.  Ouch.  Lesson learned: bring a mouse, and a maybe a video just in case.

Difficulties of Showing Progress in VR

Speaking of videos- it's really hard to show people what you're working on in VR!  No one but the people living with us had actually seen or played the game, as it was really hard to show people the product while it was in-progress.
Towards the end of development, I captured some footage and edited it into a short video to pass around to friends and family (and show them what I had been working on for months on end).  Video seems to be the best way to show your game- although they are coming out with more and more portable VR headsets, so it'll probably be much easier to show them off now than when we started.  Nonetheless, a video was nice to have to send around to show people I wasn't crazy and was actually making something.

PART 3: ART

Designing the Environments

 I covered most of this above, but for the aesthetic I wanted a very classic, fun, child-friendly fairy tale look.  Nothing scary, nothing too realistic, and we found a lot of low-poly art that was a great fit for the game.  â€‹Some woods to surround the main scenes, and I had a very fun time designing the little farm- placing the pens, animals, making a little pumpkin patch- this was one of my favorite parts of development!  It was kind of like a little farm simulation game, but really nothing happened unless I were to program something in to make it happen (which I didn't).  Ultra difficult FarmVille!

â€‹Shopping for Assets

We had to visit a couple different 3D asset stores- no one resource had everything we needed, and in a few cases I ended up creating some props myself.  I'm particularly proud of the cauldron lid, which is made up of an upside-down fountain, two chimneys, and a series of capsules and cylinders.  Again, if I had infinite time I would have wanted to learn 3D modeling (still do, but couldn't learn it in time for this project) and do a lot more myself, but for less unique objects like trees and whatnot, I was happy to not reinvent the wheel.
I did end up doing few textures from scratch for the Prince's castle- I couldn't find quite the right walls, ceiling or floor tiles so I painted my own and mapped them in.  I love how the ceiling came out!

â€‹Designing the Characters

This was another fun part for me!  I love illustration, and had a great time designing the cast.  Cinderella was pretty set from the beginning, Father went through a few iterations/ages/types, as did the Stepmother.  The stepsisters were pretty close from the first sketch, but when I did the final art for the animation they really took on a look of their own.

I also got to design alternate outfits for the girls- Cinderella's ballgown was pretty limited as we had to match the 3D model for consistency, but I came up with some really cute similar-but-different ballgowns for the stepsisters.  The colors were consistent with their regular outfits, and the way the puppets work is that each limb and clothing item is "pinned" to a skeleton that animates.  So I was flipping the clothing from the plain dresses to the ballgowns, and they actually matched up pretty well!  I did some mix-and-match dress up for fun and then got back to work, haha.

Creating the Spine puppets

Gosh, I think all the characters were created around March?  (It's October as I'm writing this).  I had a lot of puppets to get through- Cinderella, her father, stepmother, two stepsisters, the prince, the prince's assistant, the fairy godmother, and the extras at the dance.  I managed to get it down to a routine- it took about a day to take the character sketches and make the finished art in Photoshop, and then another day to export and pin the parts together in Spine.  So about two days per character.  As time went on we added and changed the puppets for different activities and scenes, and the animations and puppets grew to be pretty complex by the end.

Creating the Animations

Wow this was a doozy!  Sooo many animations for those little puppets.  I tried to keep track in a spreadsheet but had to give up.  It was all of the characters listed above, and they all needed animations- idles, talking, walking, walking and talking, happy, sad- and those were just the basic animations.  Specific scenes needed specific actions, like the stepsister tearing up Cinderella's invitation to the ball, the Prince and Cinderella dancing, the girls trying on the shoes, etc, etc).

 Creating all of the individual movements for each character was probably one of the most time consuming parts of the game for me (outside of testing).  It was really a ton of fun and also one of my favorite parts of the game, and it's another thing I wish I could have spent more time on.  ESPECIALLY when we got the voice actor's dialog in, oh man!  They all brought so much life and nuance to the characters, and I would have loved to really animate more involved movements for some of the really fun lines.

â€‹Complex Animations/Special Cases

I had red about "skins" in Spine and wanted to try them out.  It's where you can have several different characters "pinned" to the same skeleton- so you can have multiple characters with different graphics, but they use the same animation sets.
â€‹For the Royal Ball, I needed to populate the ballroom- it would be a little empty with just the main characters!  So I set out to make an overly complex puppet of a dancing couple that could be displayed from either side (so you could either see the lady's or the gentleman's face), and then also each side had multiple graphic sets for different dancers.  I ended up with eight different dancers, and I also set it up so I could change the clothing color, so each dancer had two color variations.  It was very intense but I only had to do the animation once, so it was probably all worth it in the end (I hope).

Lighting

We started off with standard directional lighting for most of the scenes, and then once we were about 60% of the way through the game, I went through and changed up the lighting- all the outdoor daytime scenes got sunny, blue bright sunlight, the nighttime scenes got a warm moonlight, stars, lantern lights and fireflies (I LOVE THE FIREFLIES).  The indoor scenes are mostly lit by candle and lantern light, Cinderella's house also has some warm light shining from the fire under the cauldron and the fireplace.

Bringing the lighting down really made the special effects pop too!

â€‹It was literally like day and night- the scenes become much more atmospheric and evocative, and the characters got cast shadows that are really fun to watch.  It's like they're real!!
â€‹
I do reach out to touch things still in the game.  I guess I'm not that used to VR after all.

PART 4: FINISHING THE GAME

Chapter 12: The Final Touches

This was a really big turning point in the game- I had recorded the computer saying all of the lines (each character had a different computer voice) so we could work with the timelines, but the dialog was a big robotic (obviously).  Once we changed out the voices for real human ones, the game felt really real!  It wasn't just our weird idea anymore!  Many people were involved, and our characters were alive now!!

I was a little stressed hiring the voice actors- I didn't want to miss any lines and have to re-record, as the voice actors were (rightly) expensive.  We had budgeted a fairly small amount, and once I picked out voice actors I was pleased to find out we were well within budget- until I discovered broadcasting rights.  The quotes I was looking at didn't include the rights to use the audio in a commercial game, so I had to contact each voice artist, ask their fees for our usage, and redo the budget.
It was nowhere within our original plan and I was a little unsure of what to do- I started cutting down the script to try and have fewer words, but I was convinced to leave the script as-is and just go with the higher fees.  We were able to hire some really amazing voice actors though, and got our complete script.  I am really just thrilled at how everyone in the game sounds.  THEY'RE ALIVE!!!

The computer did have some funny inflections when it was reading though and since I tested so much of the game, I found myself thinking of the lines back in the original computer dialect.  I miss the stepsisters' garbled lines, but it's best that you can understand everyone and they all sound human.
â€‹
One thing that I figured would happen did turn out to be true- we needed a few random lines after the game was mostly done.  Thankfully most of them were from the narrator, and she had a great setup so subsequent recordings fit right in without any difference in quality.

â€‹Final Testing

Haha there was just so much testing in this game.  Scott had to test to get the minigames working, and then I had to test to make sure everything was running and to try and find any bugs and to make sure it worked on the Vive as well as Scott's Oculus.  So there was a lot of back and forth- sometimes I could report bugs just through messages, sometimes I had to take screen capture videos and a few times I had to do a complex screen cap video that showed the controllers as well (to debug Vive/Rift controller issues).

There were also so many small minor things- we'd been working on this game for 10 months at this point, and we had so many little small things we noticed.  Each little thing added a good amount of time though- we had to implement it, test it, pass it back and forth, make sure it didn't break anything else, and then move on.  Eventually we had to draw a line in the sand- if it broke the game or was an annoying bug we'd take care of the issue, but if it was a super edge case scenario or small visual tweak we'd leave it.  Honestly I would have loved to be able to keep working on the game- decorating the castle, making more elaborate animations to match the new awesome voices, so many things.  But part of being a dev is shipping a game, and we were both getting a little tired of the project as well.  Most of our other projects were a few weeks or a couple months, and we had other games in mind that we were eager to start.  So, we had to ship it sometime.  The game has to be called done at some point, and we finally called it done on Oct 11, 2018!

Wow, what a relief!! We knew we still weren't out of the woods, but it was definitely a huge huge milestone.
â€‹
On a more practical note, normally doing testing on a mobile device is no big deal- you sit back, tap on an iPhone, maybe flip it around a bit.  Testing in VR is physically taxing- you're on your feet with a helmet on your face (for longer than you'd play VR for fun) until you find the bug you're looking for.   Some of the bugs required me to play the same section over and over trying to get different results- at one point after about two hours of bug testing, I had to stop.  Normally VR doesn't bother me physically, but I was definitely maxed out and had to spend the rest of the night IRL.  (Right back into VR the next day, though!  It was a super annoying bug!)

Chapter 13: Sending off the game!

From what we understood of the Steam submission system, you send in the game, and then have two weeks until you can launch so you can get your marketing stuff ready.  Great, I thought, we'll submit the game and then I'll do the metadata- screenshots, promo banners, trailers, all that good stuff.

When we went to do the actual submission, we realized Steam wanted everything before they'd accept the game- the game itself, the screenshots, banners, and video too!  I was frustrated to have the finish line moved back a little bit, but forged ahead in doing the screenshots and making the video.  I sketched out storyboards and thumbnails for what I wanted the screens to look like- I'd played the game enough times to get a good idea of the views available.  Same for the video- I sketched out the approximate sequence of events and views I wanted, so when I went to record the game I had a specific set of views to try and record.

Basically me, recording gameplay footage

Recording the video was actually really easy- I thought it was going to be more difficult but Windows 10 includes an Xbox-adjacent program called "Game Bar" that will record gameplay and let you share it on the Xbox social networks.  If you asked it to record your game, it would gladly, and provide clean and tidy little gameplay videos for you!  You can even pull stills for screenshots.  I was very pleased.  Thanks to VR Heads for the tip!

The only oddity for recording the video was that I tended to naturally look at the character's faces- I could see their bodies in VR, but the computer screen can only record so much and would cut off the bottom of their feet and leave in a bunch of sky.  So I had to record everything looking a bit downwards, checking the views after each recording to make sure they were correct.  Then I had to re-record it, without the cursor in the middle of the screen.  :(  I definitely had a sore neck after recording all the footage.
â€‹
Put everything together using Adobe Premiere- I aimed for about a minute in length.  I made a 30 second trailer a month or so beforehand to show off the features and I had to cut so much out, and the pace of the video was too frenetic.  A minute let me show off the game at a more relaxed pace, include some funny moments, and it wasn't too long where people would get bored (hopefully, lol).

â€‹Packing Up and Shipping Off the Game

After all the other graphics and stuff were ready, I added everything to the Steam store page- lots of little small items to tick off here, but we got through them without any other major hiccups.

Scott handled the majority of actually shipping the final so I can't speak to the details- he reported back that the Steam upload was done via command line interface.  Unsure if it was more or less difficult than a formal iOS app submission.  We got through this part in a day though, so I'm doing to say easier!

We discussed a launch date- two weeks from then was right during the rumored Halloween Steam sale, so we opted to push back a week and launch the Monday after Halloween.  We talked about this back and forth a bit trying to figure out a date- we wanted to launch our game as soon as possible but didn't want to try and stand out during the Halloween sale, but if we pushed back much beyond that we were just sitting on our game for over 3 weeks.  We were Very Motivated to get it out into the world, so we set the launch date at November 5, 2018.  Fingers crossed it was a decent decision, we'll see.
â€‹
We heard back from Steam in a couple days after we sent everything off, and the submission was approved.  Yay!

Launching

This is kind of TBD, isn't it??  I'm writing this a week from launch so I can't really look into a crystal ball here :)  Wish us luck though!!

Marketing

I was showing off the game to friends and family a bit during development, so I went ahead and bought cinderellaVR.com and set up a basic website with a bit about the game and a brief bio.  After I finished all the Steam metadata, I updated the site with the video, screenshots, fresh text, and a press kit.  I put together all of our screenshots, banners, game descriptions, etc in a zip file and linked it from the website.
â€‹
The whole time we were developing, I had a bunch of random marketing ideas and tips and articles to clip and whatnot.  I didn't want to spend time chasing after marketing during development, so I jotted down everything into a Google docs document.  After shipping the game off, it was finally time to go through the list- I'm still sorting through it now, but I'm glad I have a list of ideas and notes to refer to and build on now that I need them!

Next Projects

Scott has an awesome idea for a new set of VR puzzle games to get off the ground, and we're slated to get those moving as soon as we get Cinderella VR off the ground.  We both love Cinderella VR but it took much longer than we thought to get out the door- so we're trying to reduce the scope of the next project and work a little more efficiently now that we know what we're doing a little bit more.  The goal is to launch a couple games right in a row, much more quickly than the 10 months Cinderella took!
â€‹Anyway I'm sure I'll be back to report more on those.  Again, wish us luck!

The End

Wow, it's been a whole journey, both on the game development and on this diary, haha.  This game was a huge project to take on, even with our experience making mobile games, but we managed to get it done.  We're immensely proud of Cinderella VR and hope you'll check it out.
â€‹
Thank you so much for reading!!  If you're a VR developer, I hope you found some of this helpful in your own game dev journeys.  Good luck out there!!

Related Jobs

DMG Entertainment — Beverly Hills, California, United States
[07.19.19]

Game Engineer
Sucker Punch Productions — Bellevue, Washington, United States
[07.18.19]

QA Manager
Sony PlayStation — San Mateo , California, United States
[07.18.19]

Global Partner Marketing Manager


text:
## How To Work Out Thrust To Weight Ratio Model Rocketry

#### Designing Rocket Motors Jacobs Rocketry

28/04/2011Â Â· Presumably you would want to calculate thrust so that you could correctly specify powertrain components in order to achieve achieve a target thrust/weight ratio. Steve Apr 24, 2011 , â€¦

#### High Power Rocketry May 2008

24/01/2018Â Â· Actually I think they just haven't fitted them at this stage. It was my understanding the core was planned for a barge landing. There is grey round bits poking out just above the bottom of the interstate they are at 45 degrees to the booster mounting points.

#### Rocketry Reusability and SpaceX teamliquid.net

The key ingredients of A are the thrust to weight ratio and the ground friction coefficient. Therefore we want to maximize the thrust (and minimize the weight) and to take off. 5 from a surface that has a low rolling friction coefficient (pavement over grass for example). If we look at the parameter B, we see that the only portions of it that we have control over are the ground aerodynamic

#### Physics and math Kerbal Space Program Discusiones generales

One model rocket has a mass of 50 grams and a rocket engine that produces a thrust of 5 N for 1 second. To find the weight, 50 g needs to be changed into kilograms by dividing by 1000. This gives a mass of 0.050 kg.

How to work out thrust to weight ratio model rocketry

#### How a Propeller Works Willkommen / Welcome

5/05/2015Â Â· The rocket weight will define the required value of thrust. Dividing the thrust required by the specific impulse will tell us how much weight flow of propellants our engine must produce. This information determines the physical size of the engine.

#### Rocket Physics Real World Physics Problems

5/05/2015Â Â· The thrust equation shown above works for both liquid rocket and solid rocket. engines. There is also an efficiency parameter called the engines. There is also an efficiency parameter called the specific impulse which works for both types of rockets and greatly simplifies the performance analysis for rockets.

#### Thrust HowStuffWorks

Advanced Rocketry Resources and Links Estes Model Rocketry If you are new to model rocketry or want the refresh your memory before diving back in, there are many "bible" of model rocketry, and the official handbook of the National Association of.

#### Rocket thrust Physics Forums

You may think lift, thrust, weight, and drag are defined in a crazy way, but the definitions aren’t going to change anytime soon. They have too much history behind them, and they actually have advantages when analyzing complex situations.

#### TWR Thrust to Weight Ratio AcronymAttic

5/05/2015Â Â· The rocket weight will define the required value of thrust. Dividing the thrust required by the specific impulse will tell us how much weight flow of propellants our engine must produce. This information determines the physical size of the engine.

#### Elementary Mathematics of Model Rocket Flight Estes Rockets

The thrust needed to sustain flight is about 1/18 of aircraft weight, and if you factor in the multiples given above, you will notice that if the aircraft can fly at full thrust in cruise, this fits nicely with a static sea level thrust force equivalent to one third of its weight force.

#### Multistage Rocket Equations

Efficiency of a propeller is defined as the ratio of available power to the engine power which is (3) Note, that this definition for efficiency contains the velocity v , which means, that the efficiency approaches zero as the flight speed goes to zero, because the thrust cannot become infinitely large.

#### calculating thrust at altitude [Archive] PPRuNe Forums

5/05/2015Â Â· Thrust is the force which moves an aircraft through the air. Thrust is generated by the propulsion system of the airplane. How is thrust generated? Thrust is a mechanical force which is generated through the reaction of accelerating a mass of gas, as explained by Newton's third law of motion. A gas or working fluid is accelerated to the rear and the engine and aircraft are accelerated in â€¦

#### How Rockets Work NASA

8/12/2005Â Â· The thrust can be shown to be given by $$F_R=v_r\frac{dm}{dt}$$ and is therefore proportional to the rate at which the mass of the rocket is changing as a result of the burnt fuel.

### How to work out thrust to weight ratio model rocketry - TWR Thrust to Weight Ratio AcronymAttic

#### how to teach groups of

Photo Credit: Greenheart Travel. Teaching English as a Second Language (ESL) in groups can be extremely challenging, but can be one of the most rewarding experiences.

#### how to set up aldi voicemail

Your voicemail box can store up to 500 voicemails, each message 3 min max length. Consider voicemail-to-text Another option MightyCall users have is our voicemail-to-text option.

#### how to write chinese calligraphy

Also known as Oriental calligraphy, scholars opine that this calligraphy is not only a way to write, but is a unique art, and was a part of ancient Chinese culture.

#### how to write a parliamentry petition

Committees Inquiry into the external oversight of police corruption and misconduct in Victoria - Report tabled The IBAC Committee has recommended significant improvements to the police complaints and oversight system in a major report tabled in Parliament.

#### how to see old internet page

See Search Box lower down this column for searches of Finfacts news pages. Where there may be the odd special character missing from an older page, it's a problem that developed when Interactive Tools upgraded to a new content management system.

#### how to use gaviscon liquid

Drink 15 to 30ml of regular-strength liquid Gaviscon, or 10 to 20ml of extra-strength liquid four times daily. The liquid should be taken following a meal or at bedtime for regular use. For occasional use take the liquid following a meal or when you have symptoms.

### You can find us here:

Australian Capital Territory: Calwell ACT, Beard ACT, Murrumbateman ACT, Lyneham ACT, O'malley ACT, ACT Australia 2622

New South Wales: Cathcart NSW, Aylmerton NSW, Vincentia NSW, Cherrybrook NSW, Wollogorang NSW, NSW Australia 2044

Northern Territory: Top Springs NT, Humpty Doo NT, Kulgera NT, Stapleton NT, Palumpa NT, Rapid Creek NT, NT Australia 0829

Queensland: Inglewood QLD, Mena Creek QLD, Owens Creek QLD, Cumberland QLD, QLD Australia 4069

South Australia: Erith SA, Aldinga SA, Kingston SE SA, Hawker SA, Fox SA, Millicent SA, SA Australia 5092

Tasmania: Claude Road TAS, Hollow Tree TAS, Lutana TAS, TAS Australia 7041

Victoria: Croydon North VIC, Frankston North VIC, Bright VIC, Windsor VIC, Yanakie VIC, VIC Australia 3004

Western Australia: Kathleen WA, Ngurrawaana Community WA, Dianella WA, WA Australia 6082

British Columbia: Port Coquitlam BC, Duncan BC, Armstrong BC, Kimberley BC, Midway BC, BC Canada, V8W 8W4

Yukon: Isaac Creek YT, Upper Laberge YT, Koidern YT, Snag Junction YT, Black Hills YT, YT Canada, Y1A 4C3

Alberta: Andrew AB, Stettler AB, Warburg AB, Carbon AB, Thorsby AB, Vauxhall AB, AB Canada, T5K 4J8

Northwest Territories: Fort Liard NT, Behchoko? NT, Deline NT, Norman Wells NT, NT Canada, X1A 9L8

Saskatchewan: Gainsborough SK, Fosston SK, Consul SK, Aylsham SK, Pelly SK, Kennedy SK, SK Canada, S4P 3C3

Manitoba: Winkler MB, Rapid City MB, Somerset MB, MB Canada, R3B 9P1

Quebec: Metabetchouanâ€“Lac-a-la-Croix QC, Mont-Tremblant QC, L'Ile-Perrot QC, Beauceville QC, Mont-Saint-Hilaire QC, QC Canada, H2Y 9W5

New Brunswick: Saint-Andre NB, Fredericton NB, Pointe-Verte NB, NB Canada, E3B 5H9

Nova Scotia: Trenton NS, Queens NS, Mulgrave NS, NS Canada, B3J 5S4

Prince Edward Island: Meadowbank PE, Tignish PE, Malpeque Bay PE, PE Canada, C1A 3N2

Newfoundland and Labrador: Lewisporte NL, Burnt Islands NL, Little Burnt Bay NL, Lumsden NL, NL Canada, A1B 8J2

Ontario: Banda ON, Jacksonburg ON, Collingwood ON, Port Anson, Tullamore ON, Faraday ON, Assumption ON, ON Canada, M7A 2L1

Nunavut: Tree River NU, Frobisher Bay (Iqaluit) NU, NU Canada, X0A 3H1

England: Basingstoke ENG, Worthing ENG, Runcorn ENG, Birmingham ENG, Keighley ENG, ENG United Kingdom W1U 5A3

Northern Ireland: Belfast NIR, Derry (Londonderry) NIR, Belfast NIR, Craigavon (incl. Lurgan, Portadown) NIR, Derry (Londonderry) NIR, NIR United Kingdom BT2 4H9

Scotland: Kirkcaldy SCO, East Kilbride SCO, East Kilbride SCO, Edinburgh SCO, Dundee SCO, SCO United Kingdom EH10 7B2

Wales: Neath WAL, Neath WAL, Newport WAL, Barry WAL, Neath WAL, WAL United Kingdom CF24 5D9


text:
# A short note about WriteTeX on MAC OSX

I have waited for pdf2svg or pstoedit to release a binary version for MAC OSX for a very long time until yesterday I was so disappointed and tried to solve it myself. I finally figured out a way to use WriteTeX in MAC OSX without fink installed. I upload a binary version of pstoedit for Mac OSX binary into the repository of WriteTeX, which is depending on Inkscape of this version installed in default location (Drag the app into your Applications folder). If you have no problem with these settings and you have the administrator privilege, then here is a solution for you.

3. Copy WriteTeX plugin to /Applications/Inkscape.app/Contents/Resources/share/inkscape/extensions
I complied a standalone binary pstoedit, please download the binary from the repository and put into executable path. For more details, please read the post here.


text:
Lars Relund Nielsen
Department of Economics and Business Economics
Fuglesangs Allé 4
DK-8210 Aarhus V
Office 2621-114
Phone: +45 871 65145/+45 61 300 299 (mobile)
E-mail: lars@relund.dk
ORCID: 0000-0002-4802-3071

Cand.scient.oecon. (M.Sc.), Ph.D. 2004 in Mathematics and Economics at the University of Aarhus. Professor at Department of Economics and Business Economics, Business and Social Sciences, Aarhus University.

## Plotting IP and MO-IP models in R

20. February 2017

I recent released a small package gMOIP which can make 2D plots of linear and integer programming models (LP/IP). With the package you can make plots of the feasible region (or solution space) of an LP, visualize the integer points inside the region and the iso profit curve. Moreover, can also make a plot of a bi-objective criterion space and the non-dominated (Pareto) set. Figures are prepared for LaTeX and can automatically be transformed to TikZ using tikzDevice. Læs mere »

## How to install a fully working LaTeX environment

LaTeX 17. February 2015

This post is a guide on how to install the computer typesetting system LaTeX and the corresponding programs for editing and creating LaTeX documents, and converting them to Portable Document Format (pdf) on Windows.

You will need to install the following software in the following order

1. A LaTeX engine. A free engine under Windows is MikTeX (containing a lot of other useful stuff). Just install the basic installer, which will download the packages you need automatically.
2. A LaTeX editor. I recommend the free editor TeXStudio which is very powerful. Download and install the latest version. If you want another spellchecker language (e.g. Danish), have a look at this page.
3. Even though that TeXStudio have a built-in pdf viewer. I also suggest to install SumatraPDF.

Happy typing 🙂

## Highlighting R code in LaTeX using SweaveListingUtils

4. February 2009

It is well known that you can use Sweave to integrate R code into a LaTeX document. However, how do we highlight R code in LaTeX? LaTeX got its own powerful package listings that can highlight source code from various languages. Moreover, the package SweaveListingUtils provides utilities for defining R as a listings “language”. To highlight your R code in your Sweave document you have to include the following code chunk: Læs mere »

© Lars Relund Nielsen