четверг, 2 июля 2009 г.

Копируем к себе!!!!!!!!!!!

Флэшмоб











Настроение сейчас - норм)




Сперто у Kaguya-sama.



Условия:


1. Заходите на сайт world-art.ru и копируете оттуда тамошний список рейтинга самых популярных аниме.


2. Вставляете в дневник


3. А теперь основная работа


Посмотрела - зачеркнутым.


Начала смотреть - курсив.


Собираюсь смотреть - жирным.




01 Крутой учитель Онидзука [1999] 9.1878 5793 9.2


02 Кланнад [ТВ-2] [2008] 9.1732 990 9.2


03 Код Гиас: Восставший Лелуш (второй сезон) [2008] 9.1597 2591 9.2 мангу читаю)


04 Бек [2004] 9.1545 4193 9.2


05 Телохранитель ветра [ТВ] [2001] 9.1388 145 9.4


06 Нодамэ Кантабиле (первый сезон) [2007] 9.1362 2211 9.2


07 Хикару и Го [ТВ] [2001] 9.0550 1761 9.1


08 Граница пустоты: Сад грешников (фильм пятый) [2008] 9.0454 485 9.1


09 Стальной алхимик [ТВ-1] [2003] 9.0334 4981 9.0


10 Не сдавайся! [2008] 9.0304 1196 9.1


11 Higashi no Eden TV [2009] 9.0272 860 9.1


12 Мастер Муси [2005] 9.0229 2421 9.0


13 Тетрадь дружбы Нацумэ (второй сезон) [2009] 9.0204 367 9.1


14 Нана [ТВ] [2006] 9.0159 1921 9.0 мангу прочитала


15 Тетрадь Смерти [ТВ] [2006] 9.0132 5502 9.0


16 Бродяга Кэнсин OVA-1 [1999] 9.0061 1606 9.0


17 Хост-клуб Оранской школы [2006] 8.9949 3696 9.0 мангу прочитала


18 Ван-Пис [ТВ] [1999] 8.9918 1575 9.0


19 Мой сосед Тоторо [1988] 8.9867 2097 9.0


20 Код Гиас: Восставший Лелуш (первый сезон) [2006] 8.9734 2691 9.0


21 Время Евы [2008] 8.9730 243 9.1


22 Ковбой Бибоп [ТВ] [1998] 8.9701 3096 9.0


23 Жил-был Пес [1982] 8.9649 751 9.0


24 Пять сантиметров в секунду [2007] 8.9607 3190 9.0


25 Гуррен-Лаганн [ТВ] [2007] 8.9577 1802 9.0


26 Эф - история мелодий [2008] 8.9543 661 9.0


27 Унесённые призраками [2001] 8.9531 2816 9.0


28 Сильнейший в истории ученик Кэнъити [2006] 8.9450 1619 9.0


29 Эф - история воспоминаний [2007] 8.9438 1422 9.0


30 Самурай Чамплу [2004] 8.9411 2700 9.0


31 Добро пожаловать в Эн.Эйч.Кэй [2006] 8.9401 2084 9.0


32 Кланнад [ТВ-1] [2007] 8.9384 1070 9.0


33 Канон [ТВ-2] [2006] 8.9375 973 9.0


34 Трогательный комплекс [2007] 8.9371 1856 9.0


35 Эврика 7: Псалмы Планет [ТВ] [2005] 8.9351 1506 9.0


36 Гинтама [ТВ] [2006] 8.9349 350 9.0


37 Мобильный воин ГАНДАМ: Поколение [2002] 8.9343 438 9.0


38 Кэйон! [2009] 8.9338 586 9.0


39 Первый шаг [ТВ-2] [2009] 8.9307 169 9.1


40 ТораДора! [2008] 8.9302 1585 9.0


41 Охотник х Охотник [ТВ] [1999] 8.9292 419 9.0


42 Волчица и пряности (первый сезон) [2008] 8.9248 1882 8.9 прочитала мангу)


43 Мед и клевер (первый сезон) [2005] 8.9193 1158 8.9


44 Ария (третий сезон) [2008] 8.9184 116 9.2


45 Ария (второй сезон) [2006] 8.9179 103 9.2


46 Огни Пестрой Арены [ТВ] [2003] 8.9173 211 9.1


47 Девочка, покорившая время [2006] 8.9156 2090 8.9


48 Странники [2003] 8.9152 1302 8.9


49 Первый шаг [ТВ-1] [2000] 8.9130 349 9.0


50 Эльфийская песнь [2004] 8.9010 5396 8.9


51 Мед и клевер (второй сезон) [2006] 8.8979 794 8.9


52 Падал прошлогодний снег [1983] 8.8926 847 8.9


53 Меланхолия Харухи Судзумии [ТВ-1] [2006] 8.8896 2988 8.9


54 Монстр [2004] 8.8878 712 8.9


55 One Outs [2008] 8.8850 146 9.1


56 Кайба [2008] 8.8827 194 9.1


57 Сестры Минами OVA [2009] 8.8781 30 10.0


58 Триплексоголик (второй сезон) [2008] 8.8745 642 8.9


59 Остров сокровищ: Фильм 1 [1986] 8.8640 91 9.2


60 Шумиха! [2007] 8.8592 819 8.9


61 Фантом [ТВ] [2009] 8.8583 150 9.1


62 Евангелион [ТВ] [1995] 8.8568 3703 8.9


63 Могила светлячков [1988] 8.8524 1065 8.9


64 Детройт, город металла [2008] 8.8488 867 8.9


65 В джунглях всё было хорошо, пока не пришла Гуу [2001] 8.8465 417 8.9


66 Счастливая звезда [ТВ] [2007] 8.8460 1390 8.9


67 Мобильный воин ГАНДАМ 00 (второй сезон) [2008] 8.8409 188 9.0


68 Путешествие Кино - прекрасный мир [ТВ] [2003] 8.8400 712 8.9


69 История юного Ханады [2002] 8.8377 73 9.3


70 Беспокойные сердца [ТВ] [2003] 8.8372 1731 8.9


71 Хроника Крыльев OVA-2 [2009] 8.8325 88 9.2


72 Initial D Fourth Stage [2004] 8.8169 128 9.1


73 Триган [1998] 8.8128 2219 8.8


74 Хроника Крыльев OVA-1 [2007] 8.8124 391 8.9


75 Eyeshield 21 TV [2005] 8.8103 339 8.9


76 Стальная тревога: Фумоффу [2003] 8.8103 2000 8.8


77 Альянс Серокрылых [2002] 8.8027 1977 8.8


78 Остров сокровищ: Фильм 2 [1988] 8.8011 76 9.2


79 Кибер-виток [2007] 8.7999 610 8.9


80 Макросс Фронтир [2008] 8.7983 506 8.9


81 Триплексоголик (первый сезон) [2006] 8.7977 1058 8.8


82 Прощай, унылый учитель. Экстремально!! [2008] 8.7948 268 8.9


83 Мононокэ [ТВ] [2007] 8.7910 392 8.9


84 Кайдзи [2007] 8.7782 269 8.9


85 С его стороны - с ее стороны [1998] 8.7764 1371 8.8


86 Ходячий замок [2004] 8.7751 1901 8.8


87 За облаками [2004] 8.7741 1428 8.8


88 Адзуманга Дайо [2002] 8.7737 1549 8.8


89 Когда плачут цикады (первый сезон) [2006] 8.7718 1650 8.8


90 Сердца Пандоры [2009] 8.7712 164 9.0 прочитала мангу)


91 Клубничный Зефир [ТВ] [2005] 8.7672 367 8.9


92 Прощай, унылый учитель [ТВ] [2007] 8.7649 810 8.8


93 Initial D First Stage [1998] 8.7641 222 8.9


94 Она и ее кот [1999] 8.7613 1149 8.8


95 Берсерк [1997] 8.7582 1713 8.8


96 Двенадцать королевств [2002] 8.7550 605 8.8


97 Гиперпространственная крепость Малакросс [1982] 8.7506 233 8.9


98 Пираты Черной лагуны (второй сезон) [2006] 8.7489 1187 8.8


99 Повесть о Стране Цветных Облаков (сезон первый) [2006] 8.7448 286 8.8


100 Пожиратель Душ [2008] 8.7416 1757 8.8 прочита мангу








уффффф



сколько надо всего посмотреть)))



хотя, здесь нет многих аниме которые я смотрела и которые достойны здесь быть! несправедливо!






вторник, 30 июня 2009 г.

Song of the day :)



Замечательно поднимает настроение.


понедельник, 29 июня 2009 г.

DirectX + PhysX (English)


This is a lesson for English-speaking people and its just a copy of the same lesson on Russian language. First of all sorry for my bad English, but as I think, it is better to read this than text on Russian or text from Google translator.

I’ve wrote this translation in a cause of interest from other counties.


This lesson is about how to setup and work with PhysX with your DirectX based application and what problems you need to solve on this way. Also Ill give you information about how to create NxConvexMesh and NxTriangleMesh from DirectX mesh (.x) file data.


Introduction.


First of all read this. For this time everybody know physics engine named Nvidia PhysX (also Ageia PhysX some time ago), so Ill cut away briefing about it. One thing that you really need to understand PhysX is a free for you! But sources of it is not. If you don’t want to change PhysX core you can use it for free. All that you need is to insert some Nvidia logos in your product if it is commercial. More about licenses. Go here to download latest PhysX sdk.


About lesson.


There are some difficults for DirectX developers because there is no examples for DirectX in sdk (there is only one and bad example with dxut). Google can help you to find some few examples but they are for Ageia PhysX, and there are some troubles for newbie.

People in forums ofen answering like “Examples for DirectX and OpenGL are the same!”, but I say NO! They are wrong!)

What do you need? I am using MSVS C++ 2005 for coding, so you can try it too.


With what to start?


Try to run examples in sdk, to look how the magic makes -) Below you can see code of scene update.


 RenderCallback() {
...
gScene-gt;simulate(1.0f/60.0f);
...
}

Simply order of it looks like: making of scene object, making of physic object, translate objects to scene, then calling update in step.



Problems. Matrices.


First of all some words about VRD Visual Remote Debugger (also there is better program PVD PhysX Visual Debuger). With this utillites you can catch bugs in your program “on fly” and manipulate PhysX objects. It is really cool.

In VRD you can find some diffuculties because its using RHCS Right Hand Coordinate System, but in DX we are using LHCS, don’t forget it!

How to transform NxMat34 to D3DXMATRIX ? Ive searched answer for a long time -) But its really simple:


 //NxMat34 a;
a.getColumnMajor44( d3dMat );

And how to draw our graphic object at the right place, where PhysX object is? That’s simple too (if you know it!)):


 //NxActor* object; LPD3DXMESH* g_pObjectMesh;
D3DXMATRIX d3dMat;
taburet_object-gt;getGlobalPose().getColumnMajor44( d3dMat );
g_pd3dDevice-gt;SetTransform( D3DTS_WORLD, amp;matWorld );
g_pObjectMesh-gt;DrawSubset(0);


On this screenshots something wrong with matrices -)

VRD and your program, look for differences! ^_^

Problems. Meshes..


How to create mesh from model file? For newbies it is very strong problem cause many of them don’t really know how its works, many of them using DirecX meshes to forget about buffersindexestriangles so do I -) Thanks to Chillypacman, from Nvidia forum for help in understanding how it works and functions that are really work!)

In example we will use type vector (из namespace std).


So the magic functions are:

1. Function for getting array of vertices from LPD3DXMESH


 vectorlt;floatgt; GetVertices(LPD3DXMESH *g_pMesh )
{ vectorlt;floatgt; vertices; DWORD stride = D3DXGetFVFVertexSize((*g_pMesh)-gt;GetFVF()); BYTE* vbptr = NULL; (*g_pMesh)-gt;LockVertexBuffer(0, (LPVOID*)amp;vbptr); int ii = -1; for(int i = 0; i lt; (*g_pMesh)-gt;GetNumVertices(); i++) { ii++; D3DXVECTOR3* pos = (D3DXVECTOR3*)vbptr; vertices.push_back(pos-gt;x); vertices.push_back(pos-gt;y); vertices.push_back(pos-gt;z); vbptr += stride; } (*g_pMesh)-gt;UnlockVertexBuffer(); return vertices;
}

2. Function for getting array of indices:


 vectorlt;shortgt; GetIndices(LPD3DXMESH *g_pMesh)
{ LPVOID * ppData; DWORD stride = sizeof(short); BYTE* ibptr = NULL; short* indices = new short[(*g_pMesh)-gt;GetNumFaces() * 3]; vectorlt;shortgt; copy; (*g_pMesh)-gt;LockIndexBuffer(0, (LPVOID*)amp;indices); for(int i = 0; i lt; (*g_pMesh)-gt;GetNumFaces() * 3; i++) { copy.push_back(indices[i]); } (*g_pMesh)-gt;UnlockIndexBuffer(); return copy;
}

Before we continue lets speak about what Triangle Mesh and Convex Mesh is.

First object used only for static geometry and you cane use it for walls in your engine, but you need to know that Nvidia advice is to avoid of using it, its better to use simple objects like box everywhere you can.

Second object type is simple rounded mesh with maximum of 256 vertices that can be used for both static and dynamic objects. Its can be generated automatically ore loaded from file formats like Collada.



Now we can return to magic functions:


2. Function for generation of NxTriangleMesh:


 NxActor* GenTriangleMesh(NxVec3 pos, vectorlt;shortgt; indices, vectorlt;floatgt; vertices )
{ int NumVerticies = vertices.size() / 3; int NumTriangles = indices.size() / 3; //Create pointer for vertices NxVec3* verts = new NxVec3[NumVerticies]; int ii = -1; for(int i = 0; i lt; NumVerticies; i++) { ++ii; verts[i].x = vertices[ii]; verts[i].y = vertices[++ii]; verts[i].z = vertices[++ii]; } //Create pointer for indices NxU16 *tris = new NxU16[indices.size()]; for(int i = indices.size() - 1; i gt;= 0; i--) tris[i] = i; // Build physical model NxTriangleMeshDesc TriMeshDesc; TriMeshDesc.numVertices = NumVerticies; TriMeshDesc.numTriangles = NumTriangles; TriMeshDesc.pointStrideBytes = sizeof(NxVec3); TriMeshDesc.triangleStrideBytes = 3*sizeof(NxU16); TriMeshDesc.points = verts; TriMeshDesc.triangles = tris; TriMeshDesc.flags = NX_MF_16_BIT_INDICES ;//| NX_MF_FLIPNORMALS ; NxTriangleMeshShapeDesc ShapeDesc; NxInitCooking(); // Cooking from memory MemoryWriteBuffer buf; bool status = NxCookTriangleMesh(TriMeshDesc, buf); ShapeDesc.meshData = g_pPhysicsSDK-gt;createTriangleMesh(MemoryReadBuffer(buf.data)); NxActorDesc actorDesc; actorDesc.shapes.pushBack(amp;ShapeDesc); actorDesc.globalPose.t = pos; NxActor* act = g_pScene-gt;createActor(actorDesc); delete[] verts; delete[] tris; return act;
}

3. Function for generation of NxConvexMesh:


 NxActor* GenConvexMesh(const NxVec3amp; pos, vectorlt;floatgt; vertices, const NxReal density)
{ int i = 0; NxActorDesc actorDesc; NxBodyDesc bodyDesc; int numVertices = vertices.size() / 3; NxVec3* verts = new NxVec3[numVertices]; int ii = -1; for(int i = 0; i lt; numVertices; i++) { ++ii; verts[i].x = vertices[ii]; verts[i].y = vertices[++ii]; verts[i].z = vertices[++ii]; } // Create descriptor for convex mesh NxConvexMeshDesc convexDesc; convexDesc.numVertices = numVertices; convexDesc.pointStrideBytes = sizeof(NxVec3); convexDesc.points = verts; convexDesc.flags = NX_CF_COMPUTE_CONVEX; NxActorDesc actorDesc; NxInitCooking(); MemoryWriteBuffer buf; bool status = NxCookConvexMesh(convexDesc, buf); NxConvexShapeDesc* convexShapeDesc = new NxConvexShapeDesc(); convexShapeDesc-gt;localPose.t = NxVec3(0,0,0); convexShapeDesc-gt;materialIndex = 0; convexShapeDesc-gt;meshData = g_pPhysicsSDK-gt;createConvexMesh(MemoryReadBuffer(buf.data)); actorDesc.shapes.pushBack(convexShapeDesc); NxBodyDesc bodyDesc; if(!stat) { actorDesc.body = amp;bodyDesc; actorDesc.density = 1; } else actorDesc.body = NULL; actorDesc.globalPose.t = NxVec3(0, 0, 0); actorDesc.name = "boo"; NxActor* actor = g_pScene-gt;createActor(actorDesc); return actor;
}

Looks like this functions are the most common searched functions.


Problems with Cooking.h and Stream.h


Those headers are using in PhysX examples, but they are in different versions, and there are same problems with them, so I am giving you header (CookingStream.h) modified by my friend ASD (asddev.3dn.ru), his file is a mix of those two files and works pretty good.

You can find it in archive to lesson.


Additional:


How to use VRD (or PVD) in your program? Its simple indeed, copy this code in header where your PhysX initializing:


 #define SAMPLES_VRD_HOST "localhost"
#define SAMPLES_VRD_PORT NX_DBG_DEFAULT_PORT
#define SAMPLES_VRD_EVENTMASK NX_DBG_EVENTMASK_EVERYTHING
int gAppData;
void vrd_init()
{ NxRemoteDebugger* pRemDeb = g_pPhysicsSDK-getFoundationSDK().getRemoteDebugger(); pRemDeb-connect(SAMPLES_VRD_HOST, SAMPLES_VRD_PORT, SAMPLES_VRD_EVENTMASK); if (pRemDeb-isConnected()) { pRemDeb-createObject(gAppData, NX_DBG_OBJECTTYPE_GENERIC,"AppData", NX_DBG_EVENTMASK_EVERYTHING); pRemDeb-writeParameter("Info text", gAppData, true,"Info", NX_DBG_EVENTMASK_EVERYTHING); pRemDeb-createObject(gAppData+1, NX_DBG_OBJECTTYPE_VECTOR,"AVector", NX_DBG_EVENTMASK_EVERYTHING); pRemDeb-writeParameter(NxVec3(0, 0, 0), gAppData+1, true,"Origin", NX_DBG_EVENTMASK_EVERYTHING); pRemDeb-writeParameter(NxVec3(1, 1, 1), gAppData+1, true,"Extent", NX_DBG_EVENTMASK_EVERYTHING); pRemDeb-addChild(gAppData, gAppData+1, NX_DBG_EVENTMASK_EVERYTHING); // Tells our application that we have created the VRD object // and that it is ok to set information in it gAppData = 1; }
}

After PhysX initialization call vrd_init();. Now if you ran VRD before your program starts, your program will automatically be connected to VRD.


What is in the archive?


My sample based on example for Ageia NovodeX (first name of PhysX) from CodeSampler.com, there are few things that you need to change in their lesson:

1. from project properties you must remove Physics.lib. Also you need to copy PhysXLoader.lib,nxcooking.lib,NxCharacter.lib to project folder and too connect library’s use:



 #pragma comment(lib, "physxloader.lib")
#pragma comment(lib, "nxcooking.lib")
#pragma comment(lib, "NxCharacter.lib")


2. In compilation you may see error in function initNovodeX() where you need to remove those lines:

sceneDesc.broadPhase = NX_BROADPHASE_COHERENT;

sceneDesc.collisionDetection = true;

So everything will run now!

Screenshot from my example.


P.S.


So there is a point where my lesson ends -) Enjoy it!

Thanks to ASD and Chillypacman for their help again. You can also see Chillypacmans solution HERE

Thanks to Nvidia for free PhysX!

And… sorry for my bad English again)


Wow, and archive!! - dx9_novodex_simple_derivedbycrol

суббота, 27 июня 2009 г.

Morning Flat – Индикатор пробоя утреннего флэта.


Morning Flat Индикатор пробоя утреннего флэта в свободном доступе здесь.



Параметры:


StartHour час начала утреннего флэта


EndHour час окончания утреннего флэта


TargetLevel целевой уровень сетки Фибоначчи, взятый от ширины канала утреннего флэта


© ChartMaster


Posted in Обзор индикаторов

пятница, 26 июня 2009 г.

Введение.


Это сообщение появилось здесь, ибо я так захотел. Публиковаться тут будут мои сумасшедшие идей касательно рекламы и финансовой сферы. Это все для души, но если, кто заинтересуется моими разработками, то прошу на чашку чая и на подписание контракта.


Всем удачи. С уважением, Алекс.

среда, 24 июня 2009 г.

ПОСЛЕДНИЙ ДИКТОР РЕСПУБЛИКИ НЕМЦЕВ ПОВОЛЖЬЯ, Продолжение

...Придя по заданию редакции к Якобу Шмалю, я вспомнила, что уже видела этого человека. Три года назад он, только что переселившийся в ФРГ из Уфы, выступал на литературном вечере для переселенцев, читал один из своих рассказов. Шмаль – автор опубликованной в 1995 году в Москве на немецком языке книги «Чаша выпита до дна» - удивил своей простотой и скромностью. В нем не было ничего от «мэтра»: ни царственного величия, ни усталой снисходительности к нашей, как всегда, пестрой во всех отношениях аудитории. Он ни словом не обмолвился, что его книгу прочитали и отметили многие люди. С ней знакомы и читатели Германии. Он показал мне отзыв на книгу, который получил еще находясь в Уфе. (Текст привожу в переводе на русский язык):
«Федеративная Республика Германия, канцлер ФРГ,
Господину Якобу Шмалю, Башкортостан, Уфа, ул.Правды 34:

Многоуважаемый господин Шмаль!
Я получил книгу Ваших воспоминаний «Чаша выпита до дна», которую вы мне любезно прислали. Ваша книга – потрясающий документ, который дает впечатляющее описание судеб российских немцев в Советском Союзе, особенно в период сталинской диктатуры. Этим Вы внесли свой вклад в то, чтобы не померкла память о жертвах насилия и войны. Одновременно Ваша книга – проникновенная заключительная речь адвоката в защиту человечности и примирения между народами. Вы сами, несмотря на тяжелые удары судьбы, никогда не теряли своих убеждений. Я желаю Вам, чтобы Ваша честная позиция нашла заслуженную поддержку.
С пожеланиями радости и успеха в Вашем дальнейшем творчестве.

Гельмут Коль

Якоб Шмаль не дожил до своего 80-летия год, а тогда, когда я беседовала с ним в его берлинской квартире, ему было 77. Несмотря на груз лет, пять лагерей и две сложнейшие операции на сердце, этот человек с ясным, открытым взглядом голубых глаз не производил впечатления старого человека, напротив, он был очень бодрым и активным. Последний диктор Республики немцев Поволжья, журналист, писатель, а также вальщик леса, молотобоец, табельщик, возчик, сплавщик, нормировщик управления буровых работ, инженер, начальник отдела труда и зарплаты...
Он родился в 1923 году в селе Гримм на берегу Волги. Гримм, которому недавно исполнилось 240 лет, в начале 20-х годов был крупным (около 1000 дворов) поселком, как бы сейчас сказали городского типа – ухоженным и благополучным. В селе работали МТС, государственная мельница, четыре школы и даже завод «Рекорд», производивший станки и бытовую технику. Повальное раскулачивание и сильнейший голод в Поволжье в 1932-1933 годах привели к гибели сотен жителей поселка. Его население заметно поредело. Но вскоре, благодаря усердному труду и хозяйскому отношению к делу, Гримм поднялся на ноги. Село, как и Республика немцев Поволжья в целом, было оснащено передовой по тем временам сельскохозяйственной техникой, поэтому урожайность здесь была значительно выше, чем в соседних ненемецких хозяйствах.
Якоб учился в гриммской образцовой средней школе, широко известной своими традициями в республике. В ней преподавали замечательные педагоги – мастера своего дела, которые привили Якобу любовь к родному языку и литературе. Кстати, слушая его рассказы о своей жизни, я не могла не заметить, что почти каждый эпизод он иллюстрировал образцами из классической немецкой поэзии, особенно стихотворениями и балладами горячо любимого им Шиллера. Читал он совершенно свободно и по памяти. Как проникновенно и торжественно он декламировал: звонко, четко, в пружинящем ритме лились чеканные строки! «Конечно, - подумала я – чувствуется опыт диктора». Однако, дело не только в профессии, но и в большом чувстве, которое он пронес через всю свою жизнь, как и любовь к «малой родине» - Гримму, и которое помогло ему выстоять, не сломаться, выжить в тяжелые годы депортации, трудармии и спецпоселения.
В 11 лет Якоб лишился отца. Будучи старшим сыном в семье, начал работать на сельхозучастке, чтобы помочь матери растить младших детей. В десятом классе начал сотрудничать с газетами разных кантонов республики. В 1939 году был зачислен в штат редакции газеты «Большевик» в Энгельсе. «Я не был отличником, - вспоминал Шмаль, - но языком владел лучше всех в классе, как говорится, чувствовал родную речь. Учителя всегда отмечали мои сочинения». Может быть, именно поэтому, выдержав невероятно сложный конкурс, был принят в Радиокомитет Немецкой республики диктором. Было ему в ту пору чуть больше 16 лет. Работая в Энгельсе, начал осваивать русский язык. Мечтал стать артистом или дипломатом...
Война оборвала успешно начавшуюся карьеру. Осенью 1941 года Шмаля в числе первых депортировали в Сибирь. За день до этого он в последний раз вышел в эфир – с передачей о подвиге красноармейца Генриха Гофмана. Уроженец Поволжья Гофман попал в плен к фашистам и был ими зверски замучан. После этой передачи радиостанция Немецкой республики на Волге замолчала. Как выяснилось позже, навсегда.
Долгих десять дней состав с вагонами, предназначенными для перевозки скота, а теперь забитый до отказа людьми, тянулся на восток. По приезде в далекий Канск все 2338 человек, находившиеся в составе, были выброшены прямо на вокзале под открытое небо. Ночевать пришлось в парке под проливным дождем. А наутро начались торги: колхозники выбирали себе дармовую рабочую силу. Естественно, брали те семьи, где было много молодых и крепких рук, малодетные семьи и пожилые люди ждали решения своей участи до позднего вечера. Несмотря на унизительную процедуру «работорговли», Шмаль сохранил теплое чувство к людям, приютившим вынужденных переселенцев в колхозе «Красное озерко». Деревенька поразила своей ужасающей бедностью. Тем не менее, все ее жители отнеслись к немцам столь радушно, что их сердца начали оттаивать. Пока сооружали себе какое-то подобие жилища на опушке леса, Шмаль, примкнув в пути к одной из семей земляков, жил вместе с ними у одной супружеской пары. «Сын хозяев воевал на фронте с немцами, фашистами, врагами, а они относились к нам, немцам-квартирантам по-человечески, с уважением и сочуствием. Никогда не забуду этих гостеприимных, добрых людей!» – говорил Шмаль.

вторник, 23 июня 2009 г.