Sachverhalt:
A.
Die Stimmberechtigten von Affoltern am Albis genehmigten anlässlich der Gemeindeversammlung der politischen Gemeinde vom 18. Juni 2012 als Geschäft Nr. 3 einen Objektkredit von Fr. 477'000.-- für den Bau einer Solarthermie- und Photovoltaikanlage auf den Gebäudedächern des Schwimmbades Stigeli.
X._ gelangte am 16. Juli 2012 an den Bezirksrat Affoltern und beantragte mit seinem ′′Rekurs (Beschwerde) ′′, der genannte Gemeindeversammlungsbeschluss sei aufzuheben. Er rügte zum einen eine falsche Information der Stimmberechtigten durch den Gemeinderat, zum andern einen Verstoss gegen das kantonale Energiegesetz als übergeordnetem Recht.
Der Bezirksrat behandelte die Rechtsmitteleingabe in Bezug auf die erste Rüge als Stimmrechtsrekurs und trat darauf mit Dispositiv-Ziff. 1 seines Beschlusses vom 20. September 2012 wegen Verspätung nicht ein. Die Rüge des Verstosses gegen übergeordnetes Recht behandelte der Bezirksrat als Gemeindebeschwerde und wies diese mangels Verstosses gegen übergeordnetes Recht mit Dispositiv-Ziff. 2 seines Beschlusses ab.
Am 19. Oktober 2012 führte X._ beim Verwaltungsgericht des Kantons Zürich Beschwerde und beantragte die Aufhebung von Dispositiv-Ziff. 2 des Bezirksratsentscheids. Das Verwaltungsgericht wies die Beschwerde am 23. Januar 2013 ab (Verfahren VB.2012.00665).
B.
Gegen diesen Entscheid des Verwaltungsgerichts hat X._ beim Bundesgericht am 18. Februar 2013 Beschwerde erhoben. Er beantragt die Aufhebung des angefochtenen Entscheids und erhebt verschiedene Verfahrensrügen.
Der Gemeinderat Affoltern a.A. und das Verwaltungsgericht haben auf Vernehmlassung verzichtet.

Erwägungen:
1.
1.1. Das Verwaltungsgericht hat die vorliegende Angelegenheit als Beschwerde gegen eine vom Bezirksrat beurteilte Gemeindebeschwerde behandelt. Der Beschwerdeführer beanstandet dies nicht. In dieser Hinsicht ist vor Bundesgericht die Beschwerde in öffentlich-rechtlichen Angelegenheiten gemäss <ref-law> zulässig. Die Eintretensvoraussetzungen geben zu keinen besondern Bemerkungen Anlass (Art. 82 lit. a, Art. 86, Art. 89 Abs. 1 und Art. 100 Abs. 1 BGG).
Das Bundesgericht prüft die Anwendung von Bundesrecht mit freier Kognition, kantonale Bestimmungen jedoch lediglich unter dem Gesichtswinkel der Bundesverfassung und insbesondere des Willkürverbots gemäss <ref-law> (<ref-law>).
In der Beschwerdebegründung ist gemäss <ref-law> in gedrängter Form darzulegen, inwiefern der angefochtene Akt Recht verletzt. Nach <ref-law> sind die Verletzungen von Grundrechten und von kantonalem Recht als solche zu rügen und zu begründen. Es ist im entsprechenden Sachzusammenhang zu prüfen, ob die vorliegende Beschwerde diesen Anforderungen genügt.
1.2. Der Beschwerdeführer verweist auf das Verfahren betreffend die Protokollierung der Gemeindeversammlung. Darauf ist im parallel geführten Verfahren einzugehen (Urteil vom 27. Mai 2013 im Verfahren 1C_28/2013). Anzufügen ist, dass die korrekte Protokollierung keinen direkten prozessualen Zusammenhang mit der Frage des Verstosses gegen übergeordnetes Recht aufweist.
2.
Der Eventualantrag um Aufhebung des angefochtenen Entscheids aus formalen Gründen weist keine Begründung auf, die eine rechtliche Beurteilung erlauben würde. Die Beschwerde genügt den Begründungsanforderungen offensichtlich nicht. In diesem Punkt kann auf die Beschwerde nicht eingetreten werden.
3.
Der Beschwerdeführer rügt in Bezug auf den Kreditbeschluss eine Ermessensüberschreitung der Gemeindeversammlung. Das Verwaltungsgericht hat sich dazu nicht ausgesprochen, weil der bei ihm eingereichten Beschwerde eine hinreichend begründete und nachvollziehbare Rüge nicht entnommen werden kann. Im bundesgerichtlichen Verfahren legt der Beschwerdeführer nicht dar, worin denn eine Ermessensüberschreitung liegen soll. Insbesondere macht er nicht geltend, dass die Gemeindeversammlung nicht zuständig gewesen wäre, den fraglichen Kredit zu bewilligen. Er begründet auch nicht, weshalb eine zwingend ableitbare Kostenverdoppelung der Sache vorliegen und inwiefern die Gemeindeversammlung ihre Kompetenzen überschritten haben soll. Zu Recht fügt das Verwaltungsgericht an, die Rüge, der Gemeinderat habe vor und während der Gemeindeversammlung einen unrealistischen Energieertrag in Aussicht gestellt, würde die politischen Rechte betreffen und hätte demnach im Rahmen eines Stimmrechtsrekurses geltend gemacht werden müssen (Urteil vom 27. Mai 2013 im Verfahren 1C_ 634/2012).
4.
Das Verwaltungsgericht hat im angefochtenen Entscheid ausführlich dargelegt, dass das kantonale Energiegesetz (EnergG) am 11. Juli 2011 mit der Bestimmung von § 12 Abs. 4 ergänzt worden ist, wonach eine Wärmepumpe nur noch eingesetzt werden dürfe, wenn eine Abdeckung der Wasserfläche gegen Wärmeverluste vorhanden sei. Diese Ergänzung des Energiegesetzes sei indes im Zeitpunkt des Gemeindeversammlungsbeschlusses noch nicht in Kraft gestanden und sei immer noch nicht in Kraft gesetzt worden. Auch wenn die Bestimmung eine Vorwirkung entfalten würde, hätte sie auf das umstrittene Projekt keinen Einfluss. Bei dieser Sachlage verstosse der Beschluss der Gemeindeversammlung nicht gegen übergeordnetes Gesetzesrecht.
Der Beschwerdeführer legt nicht dar, dass die genannte Norm tatsächlich in Kraft gesetzt worden sei. Es mag wünschbar erscheinen, dass eine vom kantonalen Gesetzgeber geschaffene Norm bereits vor ihrem Inkrafttreten Beachtung findet. Dies besagt indessen nicht, dass die Auffassung des Verwaltungsgerichts, das umstrittene Projekt verstosse unter den gegebenen Umständen nicht gegen das Energiegesetz, geradezu willkürlich ist. Somit erweist sich die Rüge des Verstosses gegen übergeordnetes Recht als unbegründet.
Das Verwaltungsgericht hat seiner Hauptbegründung angefügt, in Bezug auf die neue Anlage könne auch unter Beachtung der neuen Bestimmung im Energiegesetz nicht zwingend von einem Verstoss gesprochen werden. Der Beschwerdeführer stellt diese Eventualerwägung in Frage. Darauf ist indes in Anbetracht der Hauptbegründung und mangels genauer Kenntnis der entsprechenden Norm nicht näher einzugehen.
5.
Schliesslich beanstandet der Beschwerdeführer die ihm auferlegten Verfahrenskosten. Er führt dazu lediglich aus, dass diese in keinem Verhältnis zur Arbeitsleistung in den andern Urteilen stehe. Damit genügt die Begründung den genannten Anforderungen in keiner Weise. Es ist darauf nicht näher einzugehen.
6.
Demnach ist die Beschwerde abzuweisen, soweit darauf einzutreten ist. Bei diesem Verfahrensausgang sind die bundesgerichtlichen Kosten dem Beschwerdeführer aufzuerlegen. Eine Parteientschädigung entfällt von vornherein.

Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen, soweit darauf einzutreten ist.
2.
Die Gerichtskosten von Fr. 1'000.-- werden dem Beschwerdeführer auferlegt.
3.
Dieses Urteil wird dem Beschwerdeführer, der Gemeinde Affoltern am Albis und dem Verwaltungsgericht des Kantons Zürich, 4. Abteilung, 4. Kammer, schriftlich mitgeteilt.
Lausanne, 27. Mai 2013
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Fonjallaz
Der Gerichtsschreiber: Steinmann